Découvrez si une commande se résout en un alias, un fichier disque, une fonction shell, une commande intégrée ou un mot réservé. Utilisez type pour découvrir comment vos commandes Linux sont exécutées et mieux comprendre votre système.
Table des matières
Faire mes enchères
Lorsque nous ouvrons une fenêtre de terminal et commençons à émettre des commandes sur notre ordinateur Linux, nous nous arrêtons rarement pour réfléchir aux composants logiciels du système d’exploitation qui réagissent à nos commandes et les exécutent pour nous. Nous tapons la commande, obtenons le résultat et passons à notre charge de travail.
Savoir comment les commandes sont exécutées nous donne une meilleure compréhension de la façon dont notre système d’exploitation Linux ou autre type Unix est construit. Avoir un coup d’œil sous le capot peut faire de nous un conducteur plus informé.
Les instructions que nous émettons sur la ligne de commande appartiennent à l’une des catégories suivantes:
Alias: commande définie par l’utilisateur (ou le système) qui entraîne l’exécution d’autres séquences de commandes, généralement longues ou complexes.
Fichier disque: un fichier exécutable binaire, tel que / usr / bin / top.
Fonction Shell: une fonction définie par l’utilisateur (ou le système) qui peut être utilisée sur la ligne de commande ou incluse dans des scripts.
Commande intégrée: commande exécutée par le shell lui-même, comme pwd.
Mot réservé: un mot réservé par le shell tel que if et elif. Ils sont également appelés mots-clés.
La commande type nous dit quelle catégorie l’une des commandes Linux appartient à. Voici un tutoriel rapide pour comprendre la sortie de la commande.
La commande de type
Passons en revue quelques exemples rapides, pour chacune des catégories de commandes.
type date
La commande date est un fichier disque exécutable.
type ls
La commande ls est un alias, encapsulant la commande ls sous-jacente pour utiliser l’option –color = auto par défaut.
type lowdown
La commande lowdown est une fonction définie par l’utilisateur qui a été configurée sur le navetteur utilisé pour rechercher cet article. Il fournit un aperçu rapide de certaines ressources système. C’est une combinaison de whoami, w, free et df.
type pwd
La commande pwd est une commande intégrée du shell Bash.
type elif
La commande elif est un mot réservé du shell Bash.
Utilisation de plusieurs commandes
Vous pouvez donner au type plusieurs commandes pour identifier à la fois.
type date top ls
L’option -t
Aucune des options acceptées par ce type n’a de nom. Nous pouvons donc sortir notre livre de noms et les baptiser nous-mêmes. Si vous pensez que l’option -t signifie «laconique», vous ne vous tromperez pas beaucoup. Il réduit les réponses du type aux réponses à un seul mot.
type -t date
type -t pwd
type -t lowdown
L’option -a
Appelons celle-ci l’option «tout». Elle répertorie tous les emplacements dans lesquels se trouve la commande. Notez que cette option ne fonctionnera pas si vous utilisez également l’option -p.
Par exemple, si vous avez un alias avec le même nom que la commande sous-jacente, vous pouvez obtenir des informations sur l’alias et la commande.
type -a ls
L’option -f
L’option -f force le type à ne pas rechercher les fonctions définies par l’utilisateur ou le système. Considérez cette option comme «recherche de fonction désactivée». Notez que si la commande est une fonction, tapez signalera que la commande est introuvable.
type -f top
type -f lowdown
L’option -P
Si vous utilisez l’option -P, le type recherchera uniquement les répertoires dans $ PATH. Nous pouvons donc appeler cette option «chemin». Notez que cette option utilise un «P.» majuscule
type -P date chmod adduser
L’option -p
Si vous utilisez l’option -p, type ne répondra que si la commande est un fichier du disque dur. Notez que cette option utilise un «p» minuscule.
type -p mount
type -p ls
type -p -a ls
type ne donne aucune réponse pour ls car ls est un alias et non un fichier disque.
Mais si nous incluons l’option -a pour que le type recherche toutes les instances de la commande ls, il liste le fichier disque sous-jacent utilisé par l’alias ls.
Sommaire
C’était sympa et simple, mais éclairant tout de même.
Nous avons tendance à considérer tout ce que nous tapons dans une fenêtre de terminal comme une «commande», et nous en restons là. Mais en fait, les commandes sont implémentées de différentes manières dans le système Linux. Et le type vous permet de savoir de quel type il s’agit.