Que sont les commandes intégrées de Shell et comment les identifier?

Vous voulez savoir comment Linux offre l’expérience de ligne de commande ultra-rapide? Voici ce que vous devez savoir sur les fonctions intégrées du shell.


Charpentier à l'aide d'un avion

Sous Linux, plusieurs commandes sont chargées dans la mémoire chaque fois qu’un utilisateur lance le shell. Ces commandes font partie du shell, également appelées commandes internes du shell.

Dans cet article, nous aborderons en détail les fonctions intégrées du shell, ainsi qu’un guide sur la façon dont vous pouvez vérifier si une commande Linux est intégrée au shell.

Qu’est-ce que Shell Builtins?

Page de manuel Bash Builtins

Les commandes intégrées du shell sont, comme son nom l’indique, des commandes intégrées au shell. En effet, il est plus rapide d’exécuter des commandes couramment utilisées à partir de la RAM plutôt que de les rechercher sur le disque dur. Les développeurs Shell pensent qu’il s’agit d’un bon compromis car le chargement des données à partir de la mémoire est plus rapide que celui des disques.

Un exemple courant dans de nombreux shells modernes est la commande cd pour changer de répertoire. Étant donné que vous utiliserez cette commande plusieurs fois au cours d’une seule session, il est logique de la charger dans la mémoire pour une exécution plus rapide.

Connexes: RAM plus rapide par rapport à plus de RAM: quel est le meilleur pour les performances?

Comment identifier une commande intégrée Shell?

Pour déterminer si une commande est une commande normale ou une commande interne du shell, utilisez le taper commander. La syntaxe de base pour vérifier si une commande Linux est un shell intégré est:

type -t commandname

…où nom de commande est le nom de la commande que vous souhaitez vérifier.

Par exemple, pour vérifier si la commande cd est un shell intégré:

type -t cd

Production:

builtin

Si la sortie affiche autre chose que intégré, tel que déposer ou alors alias, alors la commande n’est pas une commande interne du shell.

Dans Bash, vous pouvez également utiliser commande -v pour identifier si une commande est un shell intégré. La sortie affichera le nom de la commande s’il s’agit d’une commande intégrée. Par exemple, pour vérifier si la commande cd est un shell intégré:

command -v cd

Vous pouvez également utiliser le lequel commander. Cette commande vous indiquera le chemin absolu d’une commande ou s’il s’agit d’un shell intégré ou d’un alias. La commande which peut être un shell intégré lui-même en fonction du shell que vous utilisez.

zsh quelle commande sortie

La page de manuel d’un shell listera également les commandes intégrées du shell. Zsh consacre une page entière aux builtins. Ce n’est pas surprenant, étant donné à quel point zsh est riche en fonctionnalités, ce qui le rend cher à tant d’utilisateurs expérimentés.

Étant donné que différents shells ont des fonctions intégrées différentes, un utilitaire commun qui pourrait être un shell intégré peut également exister en tant qu’exécutable autonome sur un système. Si vous souhaitez utiliser une commande standard, utilisez simplement son chemin absolu.

Vous connaissez maintenant la différence entre les commandes régulières et les commandes intégrées du shell

Avec des ordinateurs modernes, même bas de gamme, beaucoup plus puissants que les mini-ordinateurs de l’ère Unix originale, les développeurs shell peuvent utiliser plus de fonctions intégrées pour accélérer le système. Vous pouvez profiter des fonctions intégrées du shell tout en continuant à utiliser les commandes régulières si vous avez besoin de certaines options.

Différents shells ont des caractéristiques différentes et donc des fonctions intégrées différentes. Choisir la bonne coque est une question de caractéristiques qui sont importantes pour vous.


best-of-linux-shells
Quel shell Linux est le meilleur? 5 coquilles communes comparées

Vous recherchez une alternative au shell bash Linux? Voici un aperçu du meilleur shell Linux: tsch, fish, KornShell et Z Shell.

Lire la suite


A propos de l’auteur

.

Leave a Reply

Your email address will not be published. Required fields are marked *