Vérifiez si la variable est définie dans Bash
-
Vérifiez si la variable est définie à l’aide de
-v
dans Bash -
Vérifiez si la variable est définie à l’aide de
-z
dans Bash - Vérifiez si la variable est définie ou non en affectant une valeur nulle 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.