Vérifiez si la variable est définie dans Bash

Nilesh Katuwal 30 janvier 2023
  1. Vérifiez si la variable est définie à l’aide de -v dans Bash
  2. Vérifiez si la variable est définie à l’aide de -z dans Bash
  3. Vérifiez si la variable est définie ou non en affectant une valeur nulle dans Bash
Vérifiez si la variable est définie dans Bash

Nous devons d’abord définir une variable et lui donner une valeur pour définir une variable.

La valeur peut être nulle, mais elle doit être affectée. Il existe une distinction entre une variable non définie et une variable nulle.

Contrairement à la plupart des langages de programmation courants, Bash n’a pas de fonction intégrée pour déterminer si une variable est définie ou non. Pourtant, il a la capacité de le faire.

Dans Bash Scripting, nous pouvons utiliser les options -v var ou -z $var comme expression avec la commande conditionnelle if pour confirmer si une variable est définie ou non.

[[-v Name_Of_Variable]]
[[-z Name_Of_Variable]]

Si la variable est définie, l’expression booléenne renvoie True, sinon elle renvoie False.

Vérifiez si la variable est définie à l’aide de -v dans Bash

Nous allons vérifier si une variable est définie à l’aide de la -v Variable maintenant.

Définissons une variable X avec une valeur de 5. Si la variable est définie, il sera retourné Variable 'X' is set..

#!/bin/bash

X=5  
 
if [[ -v X ]];  
then  
echo "Variable 'X' is set."  
else  
echo "Variable 'X' is not set."  
fi  

Production :

Variable 'X' is set.

Puisque nous avons défini la variable et attribué la valeur, cela a fonctionné comme prévu. Prenons un autre exemple.

#!/bin/bash
     
if [[ -v Y ]];  
then  
echo "Variable 'Y' is set."  
else  
echo "Variable 'Y' is not set."  
fi 

Production :

Variable 'Y' is not set.

Comme nous n’avons défini aucune variable Y, la sortie indique que la variable Y n’est pas définie.

Vérifiez si la variable est définie à l’aide de -z dans Bash

Nous allons vérifier si une variable est définie en utilisant -z Variable maintenant.

Définissons une variable X avec une valeur de 5. Si la variable est définie, il sera retourné Variable 'X' is set..

#!/bin/bash
X=5  
 
if [[ -z ${X} ]];  
then  
echo "Variable 'X' is not set."  
else  
echo "Variable 'X' is set."  
fi  

Ici, la première condition if renverra False, la seconde renverra True, et Variable 'X' is set. imprimera.

Production :

Variable 'X' is set.

Cela a fonctionné comme prévu puisque nous avons défini la variable et lui avons attribué une valeur. Prenons un autre exemple.

#!/bin/bash

if [[ -z ${X} ]];  
then  
echo "Variable 'X' is not set."  
else  
echo "Variable 'X' is set."  
fi 

Production :

Variable 'X' is not set.

Vérifiez si la variable est définie ou non en affectant une valeur nulle dans Bash

Nous allons vérifier si une variable est définie en utilisant -v Variable maintenant.

Définissons une variable X avec une valeur null comme X="". Si la variable est définie, elle retournera Variable 'X' is set..

#!/bin/bash

X=""     
if [[ -v X ]];  then  
   echo "Variable 'X' is set."  
else  
   echo "Variable 'X' is not set."  
fi 

Production :

Variable 'X' is set.

Comme nous pouvons le voir, même si une valeur null est attribuée à une variable, elle apparaîtra comme set après vérification.

Article connexe - Bash Variable