Comment vérifier si une commande est disponible sous Linux

LinuxLinuxBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire (lab), vous apprendrez à déterminer si une commande est disponible sous Linux et où elle se trouve. Vous explorerez trois méthodes différentes : utiliser la commande which pour trouver le chemin de l'exécutable, utiliser command -v pour vérifier la présence et identifier les commandes intégrées (built-in commands) ou les alias, et utiliser la commande type pour vérifier le type de la commande.

En effectuant ces étapes, vous acquerrez des compétences pratiques pour identifier et localiser les commandes dans votre environnement Linux, ce qui est essentiel pour une utilisation efficace de la ligne de commande et la résolution de problèmes.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/FileandDirectoryManagementGroup -.-> linux/which("Command Locating") subgraph Lab Skills linux/echo -.-> lab-558701{{"Comment vérifier si une commande est disponible sous Linux"}} linux/ls -.-> lab-558701{{"Comment vérifier si une commande est disponible sous Linux"}} linux/which -.-> lab-558701{{"Comment vérifier si une commande est disponible sous Linux"}} end

Localiser le chemin d'une commande avec which

Dans cette étape, vous apprendrez à trouver l'emplacement d'une commande sur votre système en utilisant la commande which. Lorsque vous tapez une commande dans le terminal, le système doit savoir où se trouve le fichier exécutable de cette commande. La commande which vous aide à trouver ce chemin.

Trouvons le chemin de la commande echo que vous avez utilisée dans le laboratoire précédent.

Tapez la commande suivante dans votre terminal et appuyez sur Entrée :

which echo

Vous devriez voir une sortie similaire à ceci :

/usr/bin/echo

Cette sortie vous indique que l'exécutable echo se trouve dans le répertoire /usr/bin/. /usr/bin est un répertoire courant pour stocker les programmes exécutables accessibles à tous les utilisateurs.

Maintenant, essayons de trouver le chemin de la commande htop que vous avez installée.

Tapez la commande suivante et appuyez sur Entrée :

which htop

La sortie devrait être similaire à :

/usr/bin/htop

Cela confirme que htop se trouve également dans le répertoire /usr/bin/.

La commande which est très utile lorsque vous avez besoin de savoir exactement quelle version d'une commande est exécutée, surtout si vous avez plusieurs versions installées ou si la commande se trouve dans un répertoire moins courant.

Vérifier la présence d'une commande avec command -v

Dans cette étape, vous apprendrez une autre façon de vérifier l'existence et l'emplacement d'une commande en utilisant command -v. Cela est similaire à which, mais il peut également vous indiquer si une commande est une commande intégrée au shell (built-in shell command) ou un alias, pas seulement un fichier exécutable.

Utilisons command -v pour vérifier la commande echo.

Tapez la commande suivante dans votre terminal et appuyez sur Entrée :

command -v echo

Vous devriez voir une sortie similaire à ceci :

echo

Dans ce cas, command -v nous indique que echo est une commande intégrée au shell. Les commandes intégrées font partie du shell lui-même, plutôt que des fichiers exécutables séparés.

Maintenant, vérifions la commande htop en utilisant command -v.

Tapez la commande suivante et appuyez sur Entrée :

command -v htop

La sortie devrait être similaire à :

/usr/bin/htop

Ici, command -v nous donne le chemin complet de l'exécutable htop, tout comme which. Cela indique que htop est une commande externe (un fichier exécutable), et non une commande intégrée au shell.

L'utilisation de command -v est une méthode fiable pour déterminer comment le shell interprétera un nom de commande. Elle est particulièrement utile pour distinguer entre les alias, les commandes intégrées et les exécutables externes.

Vérifier le type de commande en utilisant la commande type

Dans cette étape, vous utiliserez la commande type pour obtenir une description de la façon dont le shell interprète un nom de commande. La commande type est encore plus détaillée que command -v et peut vous indiquer si une commande est un alias, un mot-clé, une fonction, une commande intégrée (built-in) ou un fichier.

Utilisons type pour vérifier la commande echo.

Tapez la commande suivante dans votre terminal et appuyez sur Entrée :

type echo

Vous devriez voir une sortie similaire à ceci :

echo is a shell builtin

Cette sortie indique clairement que echo est une commande intégrée au shell.

Maintenant, vérifions la commande htop en utilisant type.

Tapez la commande suivante et appuyez sur Entrée :

type htop

La sortie devrait être similaire à :

htop is /usr/bin/htop

Ici, type nous indique que htop se trouve à l'emplacement /usr/bin/htop, ce qui signifie qu'il s'agit d'un fichier exécutable.

Essayons un autre exemple avec une commande qui pourrait être un alias. Les alias sont des raccourcis pour des commandes plus longues. Bien qu'il n'y ait peut-être pas d'alias par défaut configuré dans cet environnement, voyons ce que type dit à propos d'une commande courante comme ls.

Tapez la commande suivante et appuyez sur Entrée :

type ls

La sortie peut varier en fonction de la configuration du shell, mais elle montrera probablement quelque chose comme :

ls is an alias for ls --color=auto

Cela indique que ls est un alias qui ajoute automatiquement des couleurs à la sortie.

La commande type est un outil puissant pour comprendre la façon dont votre shell résout les noms de commandes et peut être très utile pour le débogage de scripts ou la compréhension du comportement des commandes.

Résumé

Dans ce laboratoire (lab), vous avez appris à vérifier si une commande est disponible sous Linux et à déterminer son type et son emplacement. Vous avez d'abord utilisé la commande which pour trouver le chemin complet des commandes exécutables telles que echo et htop, ce qui a montré comment localiser l'emplacement du fichier binaire d'une commande sur le système, généralement dans des répertoires comme /usr/bin.

Ensuite, vous avez exploré l'utilitaire command -v, qui effectue une vérification plus complète. Cette commande indique non seulement l'emplacement des fichiers exécutables, mais identifie également si une commande est une commande intégrée au shell (built-in shell command), comme le montre l'exemple de la commande echo. Cette distinction est importante pour comprendre la façon dont le shell traite différents types de commandes.