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

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 composants internes du shell, ainsi qu'un guide sur la manière de vérifier si une commande Linux est intégrée au shell.

Qu'est-ce que Shell 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 intégrée au shell, utilisez la commande type . La syntaxe de base pour vérifier si une commande Linux est un shell intégré est:

 type -t commandname

… où commandname 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 qu'un fichier ou un alias , alors la commande n'est pas une commande interne du shell.

Dans Bash, vous pouvez également utiliser la commande -v pour identifier si une commande est une commande intégrée au shell. 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 la commande which . 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.

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.