GNU/Linux >> Tutoriels Linux >  >> Linux

Obtenir des informations sur une commande avec une commande de type sous Linux

La commande type est une commande shell bash intégrée qui peut fournir le type d'une commande spécifiée.

Que signifie le « type de commande » ? Cela signifie que vous pouvez obtenir des informations telles que si une commande Linux est une commande shell intégrée, où se trouve son exécutable et si elle est associée à une autre commande.

Cela peut sembler peu utile, mais croyez-moi, cela pourrait être utile pour rechercher pourquoi une commande se comporte d'une certaine manière.

Utilisation de la commande type sous Linux

La syntaxe de la commande type est simple :

type [options] name

Pour commencer, utilisons la commande type sans options sur la commande echo bien connue :

[email protected]:~$ type echo
echo is a shell builtin

Il nous dit que echo est une commande intégrée du shell. C'est le type de commande qui s'exécuterait si le nom echo était interprété par la ligne de commande.

Essayons autre chose :

[email protected]:~$ type mkdir
mkdir is /usr/bin/mkdir

Dans le cas ci-dessus, il localise l'exécutable de la commande mkdir. Ceci est similaire à la commande which mais type est plus rapide car il s'agit d'une commande shell intégrée.

Si vous l'utilisez avec quelque chose qui n'est pas une commande, cela donne une erreur introuvable.

[email protected]:~$ type no_command
bash: type: no_command: not found

2. Type d'une commande aliasée

Vous connaissez probablement déjà les alias sous Linux. Pour rappel rapide, ce sont des pseudo commandes qui fonctionnent comme des raccourcis. Ils peuvent être définis dans votre profil shell.

Voyons quel type d'informations la commande trouve lorsque vous l'utilisez sur une commande alias :

[email protected]:~$ type ll
ll is aliased to `ls -alF'

Comme vous pouvez le voir, il montre la vraie commande derrière celle avec un alias.

3. Obtenir le type de plusieurs commandes

Vous pouvez également utiliser le type avec plusieurs commandes et nous renvoyer les résultats en écho.

[email protected]:~$ type ls ll
ls is aliased to `ls --color=auto'
ll is aliased to `ls -alF'

Sur Ubuntu et certaines autres distributions, ls est un alias pour vous montrer une sortie colorée. Cela vous aide à distinguer les liens symboliques, les liens physiques, les répertoires, les exécutables et autres types de fichiers.

4. Forcer le type à retourner le chemin des commandes

Si vous souhaitez localiser l'exécutable d'une commande et que le type continue de donner une sortie telle que des informations de shell et d'alias intégrées, vous pouvez forcer l'obtention du chemin avec l'option -P.

[email protected]:~$ type -P ls
/usr/bin/ls

Cela renverra le nom du chemin même s'il s'agit d'un alias, d'un élément intégré ou d'une fonction.

5. Obtenir toutes les informations des commandes

Nous pouvons obtenir les informations les plus complètes en utilisant l'option -a.

[email protected]:~$ type -a ls
ls is aliased to `ls --color=auto'
ls is /usr/bin/ls
ls is /bin/ls

Cela nous montre à la fois les informations de type et chaque emplacement sur le chemin système avec le fichier.

6. Renvoie uniquement le type de commande, pas le chemin

Voici différents types que vous pouvez obtenir :

  • Alias
  • Intégré
  • Fichier
  • Fonction
  • Mot clé

Vous pouvez demander uniquement le type avec l'option -t. Voici quelques exemples :

[email protected]:~$ type -t ls
alias
[email protected]:~$ type -t echo
builtin
[email protected]:~$ type -t sort
file
[email protected]:~$ type -t _mac_addresses 
function
[email protected]:~$ type -t if
keyword

Bonus :pourquoi voyez-vous "la commande est hachée" ?

Parfois, lorsque vous verrez une sortie telle que la commande est hachée avec le chemin d'accès à l'exécutable :

[email protected]:~$ type man
man is hashed (/usr/bin/man)

Pour éviter de passer trop de temps à rechercher le chemin d'un exécutable, le shell conserve souvent une liste des programmes qu'il a trouvés dans le passé. Cette liste est appelée "hachage".

Lorsque vous voyez une sortie comme "la commande est hachée", cela signifie que la commande de type renvoie le résultat des recherches déjà effectuées. Vous pouvez utiliser hash -r pour forcer le shell à effectuer une recherche à partir de zéro.

Conclusion

J'espère que vous avez appris quelque chose de nouveau aujourd'hui avec cette introduction de la commande type sous Linux. Je la trouve similaire à la commande file qui est utilisée pour obtenir des informations sur les fichiers.

Si vous aimez ce guide, partagez-le sur les réseaux sociaux. Si vous avez des commentaires ou des questions, laissez-les ci-dessous. Si vous avez des suggestions de sujets que vous aimeriez voir abordés, n'hésitez pas à les laisser également. Merci d'avoir lu.


Linux
  1. Commande Linux wc avec exemples

  2. Commande Linux Tee avec exemples

  3. Tutoriel de commande de type Linux pour les débutants (avec exemples)

  4. Commande JQ sous Linux avec exemples

  5. Comment utiliser le type de commande (afficher des informations sur la commande) sous Linux

Commande Linux ip avec exemples

Commande de type Linux

Commande Tr sous Linux avec des exemples

15 Commande Linux ps avec exemples

Comment obtenir des informations sur d'autres utilisateurs de Linux

Commande Linux lshw - Obtenir des informations sur le matériel Linux