Comment vérifier si une variable est définie 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 les techniques fondamentales pour travailler avec les variables dans la ligne de commande Linux. Vous commencerez par maîtriser la manière d'afficher les valeurs des variables à l'aide de la commande echo, une compétence essentielle pour inspecter les paramètres de l'environnement et d'autres informations stockées.

Ensuite, vous explorerez comment vérifier l'existence ou le caractère vide des variables en utilisant la commande test avec l'option -z, ce qui est essentiel pour la logique conditionnelle dans les scripts. Enfin, vous découvrirez comment lister toutes les variables d'environnement actuellement définies à l'aide de la commande env, offrant ainsi une vue complète de l'environnement de votre shell.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/UserandGroupManagementGroup(["User and Group Management"]) linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/BasicSystemCommandsGroup -.-> linux/test("Condition Testing") linux/UserandGroupManagementGroup -.-> linux/env("Environment Managing") linux/UserandGroupManagementGroup -.-> linux/unset("Variable Unsetting") subgraph Lab Skills linux/echo -.-> lab-558776{{"Comment vérifier si une variable est définie sous Linux"}} linux/test -.-> lab-558776{{"Comment vérifier si une variable est définie sous Linux"}} linux/env -.-> lab-558776{{"Comment vérifier si une variable est définie sous Linux"}} linux/unset -.-> lab-558776{{"Comment vérifier si une variable est définie sous Linux"}} end

Afficher la valeur d'une variable avec echo

Dans cette étape, vous apprendrez à afficher la valeur d'une variable à l'aide de la commande echo. Les variables en Linux sont utilisées pour stocker des informations qui peuvent être accessibles et utilisées par le shell et d'autres programmes.

Un type courant de variable est la variable d'environnement, qui stocke des informations sur l'environnement de l'utilisateur, telles que l'utilisateur actuel, le répertoire personnel (home directory) et le type de terminal.

Pour afficher la valeur d'une variable, vous utilisez la commande echo suivie d'un signe dollar ($) et du nom de la variable. Le signe dollar indique au shell que vous souhaitez voir la valeur de la variable, et non le nom de la variable lui-même.

Affichons la valeur de la variable d'environnement USER, qui stocke le nom de l'utilisateur actuellement connecté.

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

echo $USER

Vous devriez voir la sortie suivante :

labex

Cela montre que la valeur de la variable USER est labex, qui est votre nom d'utilisateur actuel dans l'environnement LabEx.

Maintenant, affichons la valeur de la variable d'environnement HOME, qui stocke le chemin vers votre répertoire personnel.

Tapez la commande suivante et appuyez sur Entrée :

echo $HOME

Vous devriez voir la sortie suivante :

/home/labex

Cela confirme que votre répertoire personnel est /home/labex.

Vous pouvez également afficher la valeur de la variable d'environnement SHELL, qui indique le chemin vers le programme de shell que vous utilisez actuellement.

Tapez la commande suivante et appuyez sur Entrée :

echo $SHELL

Vous devriez voir la sortie suivante :

/usr/bin/zsh

Cela indique que vous utilisez actuellement le shell zsh.

L'utilisation de echo avec le signe dollar est un moyen fondamental d'accéder et d'afficher les valeurs des variables dans le terminal Linux.

Tester l'existence d'une variable avec test -z

Dans cette étape, vous apprendrez à vérifier si une variable est vide ou non définie en utilisant la commande test avec l'option -z. Cela est utile dans les scripts pour prendre des décisions en fonction de l'existence d'une valeur dans une variable.

La commande test est utilisée pour évaluer des expressions conditionnelles. L'option -z vérifie si la longueur d'une chaîne de caractères est nulle. Si la chaîne est vide (ou si la variable n'est pas définie), le test est vrai.

Testons si une variable nommée MY_VARIABLE est définie. Tout d'abord, nous nous assurerons qu'elle n'est pas définie.

Tapez la commande suivante et appuyez sur Entrée :

unset MY_VARIABLE

La commande unset supprime une variable. Maintenant, utilisons test -z pour vérifier si MY_VARIABLE est vide. Nous allons la combiner avec echo pour voir le résultat du test. L'opérateur && exécute la deuxième commande seulement si la première commande réussit (retourne une valeur vraie, ce qui pour test signifie que la condition est remplie).

Tapez la commande suivante et appuyez sur Entrée :

test -z "$MY_VARIABLE" && echo "MY_VARIABLE is empty or not set"

Étant donné que nous venons de supprimer MY_VARIABLE, la condition test -z "$MY_VARIABLE" est vraie (la variable est vide), donc la commande echo sera exécutée.

Vous devriez voir la sortie suivante :

MY_VARIABLE is empty or not set

Maintenant, définissons une valeur pour MY_VARIABLE.

Tapez la commande suivante et appuyez sur Entrée :

MY_VARIABLE="Hello"

Maintenant, exécutons à nouveau la même commande test -z.

Tapez la commande suivante et appuyez sur Entrée :

test -z "$MY_VARIABLE" && echo "MY_VARIABLE is empty or not set"

Cette fois, MY_VARIABLE a la valeur "Hello", donc elle n'est pas vide. La condition test -z "$MY_VARIABLE" est fausse, et la commande echo ne sera pas exécutée.

Vous ne devriez voir aucune sortie de la commande echo cette fois-ci.

Cela démontre comment test -z peut être utilisé pour vérifier si une variable est vide ou non définie. C'est un concept fondamental utilisé dans les scripts shell pour la logique conditionnelle.

Lister toutes les variables d'environnement avec env

Dans cette étape, vous apprendrez à lister toutes les variables d'environnement actuellement définies dans votre session shell en utilisant la commande env.

Les variables d'environnement sont essentielles pour le comportement de votre shell et de vos programmes. Elles stockent des informations de configuration, des chemins vers des fichiers exécutables et d'autres paramètres.

La commande env, lorsqu'elle est exécutée sans arguments, affiche une liste de toutes les variables d'environnement et de leurs valeurs.

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

env

Vous verrez une longue liste de résultats, similaire à ceci (le résultat exact variera en fonction de votre système et de votre configuration) :

SHELL=/usr/bin/zsh
COLORTERM=truecolor
...
USER=labex
...
HOME=/home/labex
...
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
...
PWD=/home/labex/project
...

Chaque ligne de la sortie représente une variable d'environnement au format NOM_VARIABLE=valeur.

Vous pouvez voir certaines des variables que nous avons explorées dans les étapes précédentes, comme USER, HOME et SHELL. Vous verrez également de nombreuses autres, telles que PATH, qui indique au shell où chercher les commandes exécutables, et PWD, qui montre votre répertoire de travail actuel.

La commande env est un outil simple mais puissant pour inspecter l'environnement de votre shell. Elle est souvent utilisée pour le débogage ou pour comprendre le comportement d'un programme en fonction de son environnement.

Étant donné que la sortie peut être assez longue, vous pouvez rediriger la sortie de env vers un visualiseur comme less pour la consulter écran par écran.

Tapez la commande suivante et appuyez sur Entrée :

env | less

Utilisez les touches fléchées pour faire défiler vers le haut et vers le bas, et appuyez sur q pour quitter less.

Cette étape vous a présenté la liste de toutes les variables d'environnement. Dans les étapes suivantes, vous apprendrez plus sur l'utilisation de ces variables et sur la façon d'interagir avec elles.

Résumé

Dans ce laboratoire (lab), vous avez appris les techniques fondamentales pour travailler avec les variables sous Linux. Vous avez pratiqué l'utilisation de la commande echo avec le signe dollar ($) pour afficher les valeurs des variables d'environnement telles que USER, HOME et SHELL, en comprenant comment cette commande récupère les informations stockées.

De plus, vous avez exploré comment vérifier l'existence ou l'absence de contenu d'une variable en utilisant la commande test avec l'option -z, une compétence essentielle pour la logique conditionnelle dans les scripts. Enfin, vous avez appris à lister toutes les variables d'environnement actuellement définies en utilisant la commande env, ce qui vous offre une vue complète de l'environnement du shell.