Überprüfen Sie, ob die Variable in Bash festgelegt ist

Nilesh Katuwal 30 Januar 2023
  1. Überprüfen Sie, ob die Variable mit -v in Bash gesetzt ist
  2. Überprüfen Sie, ob die Variable mit -z in Bash gesetzt ist
  3. Überprüfen Sie, ob die Variable gesetzt ist oder nicht, indem Sie in Bash einen Nullwert zuweisen
Überprüfen Sie, ob die Variable in Bash festgelegt ist

Wir müssen zuerst eine Variable definieren und ihr einen Wert zuweisen, um eine Variable zu setzen.

Der Wert kann null sein, muss aber zugewiesen werden. Es wird zwischen einer unset-Variablen und einer Null-Variablen unterschieden.

Im Gegensatz zu den meisten gängigen Programmiersprachen hat Bash keine eingebaute Funktion, um festzustellen, ob eine Variable gesetzt ist oder nicht. Dennoch hat es die Fähigkeit, dies zu tun.

In Bash Scripting können wir die Optionen -v var oder -z $var als Ausdruck mit dem Bedingungsbefehl if verwenden, um zu bestätigen, ob eine Variable gesetzt ist oder nicht.

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

Wenn die Variable gesetzt ist, gibt der boolesche Ausdruck True zurück, andernfalls False.

Überprüfen Sie, ob die Variable mit -v in Bash gesetzt ist

Ob eine Variable gesetzt ist, prüfen wir jetzt mit der -v Variable.

Lassen Sie uns eine Variable X mit dem Wert 5 definieren. Wenn die Variable gesetzt ist, wird Variable 'X' is set. zurückgegeben.

#!/bin/bash

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

Ausgabe:

Variable 'X' is set.

Da wir die Variable definiert und den Wert zugewiesen haben, hat es wie erwartet funktioniert. Schauen wir uns ein anderes Beispiel an.

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

Ausgabe:

Variable 'Y' is not set.

Da wir keine Variable Y definiert haben, sagt die Ausgabe, dass Variable Y nicht gesetzt ist.

Überprüfen Sie, ob die Variable mit -z in Bash gesetzt ist

Ob eine Variable gesetzt ist, prüfen wir jetzt mit -z Variable.

Lassen Sie uns eine Variable X mit dem Wert 5 definieren. Wenn die Variable gesetzt ist, wird Variable 'X' is set. zurückgegeben.

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

Hier gibt die erste if-Bedingung False zurück, die zweite True und Variable 'X' is set. wird drucken.

Ausgabe:

Variable 'X' is set.

Es hat wie erwartet funktioniert, da wir die Variable definiert und ihr einen Wert zugewiesen haben. Betrachten Sie ein anderes Beispiel.

#!/bin/bash

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

Ausgabe:

Variable 'X' is not set.

Überprüfen Sie, ob die Variable gesetzt ist oder nicht, indem Sie in Bash einen Nullwert zuweisen

Ob eine Variable gesetzt ist, prüfen wir jetzt mit -v Variable.

Lassen Sie uns eine Variable X mit einem null-Wert als X="" definieren. Wenn die Variable gesetzt ist, wird Variable 'X' is set. zurückgegeben.

#!/bin/bash

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

Ausgabe:

Variable 'X' is set.

Wie wir sehen können, wird, selbst wenn einer Variablen ein null-Wert zugewiesen wird, diese nach der Überprüfung als set angezeigt.

Verwandter Artikel - Bash Variable