So überprüfen Sie, ob die Variable in der bash gesetzt oder leer ist

How Check Variable Is Set

Eine Variable kann definiert oder undefiniert sein. Wenn eine Variable nicht deklariert oder deklariert, aber kein Wert zugewiesen wird, ist die Variable nicht gesetzt oder undefiniert. Wenn eine Variable deklariert und einem Wert zugewiesen wird, wird die Variable gesetzt. Oftmals ist es erforderlich zu wissen, dass die jeweilige Variable für die Programmierzwecke gesetzt ist oder nicht. Einer der wichtigsten Zwecke bei der Überprüfung, ob die Variable gesetzt ist oder nicht, ist die Datenvalidierung. Bash hat keine eingebaute Funktion wie andere Standard-Programmiersprachen, um zu überprüfen, ob eine Variable gesetzt ist oder nicht. Aber bash hat eine Funktion, um diese Aufgabe zu erledigen. Wie Sie überprüfen können, ob die Variable in der Bash gesetzt ist oder nicht, wird in diesem Tutorial gezeigt.

Syntax:



[[ -vVariable]]Oder[[ -MitVariable]]

Die Option '-v' oder '-z' wird verwendet, um zu überprüfen, ob die Variable gesetzt oder nicht gesetzt ist. Der obige boolesche Ausdruck gibt true zurück, wenn die Variable gesetzt ist, und gibt false zurück, wenn die Variable nicht gesetzt oder leer ist.



${variable+string}

Parameterersatz ist eine weitere Möglichkeit, um zu überprüfen, ob die Variable gesetzt oder nicht gesetzt ist. Wenn die Variable gesetzt ist, wird der Wert des Strings zurückgegeben, andernfalls wird null zurückgegeben.



Beispiel-1: Überprüfen Sie, ob die Variable mit der Option „-z“ gesetzt oder deaktiviert ist

Erstellen Sie eine Bash-Datei mit dem Namen check_var1.sh mit folgendem Skript. Hier die erste ` wenn` Bedingung gibt true zurück und Num-Variable ist nicht gesetzt drucken wird. In der nächsten Anweisung wird der Variablen 20 zugewiesen, $num . Die zweite `if`-Bedingung gibt false zurück und Num ist gesetzt und der Wert von Num=20 drucken wird.

check_var1.sh

#!/bin/bash
#Überprüfe, ob die Variable gesetzt ist oder nicht
wenn [ -Mit ${Num} ];dann
rauswerfen ''Num'-Variable ist nicht gesetzt'
anders
rauswerfen ''Num'-Variable ist gesetzt'
Sein
#Werte zuweisen
Auf eins=zwanzig
#Überprüfen Sie, ob die Variable gesetzt ist oder nicht, nachdem Sie den Wert zugewiesen haben
wenn [ -Mit ${Num} ];dann
rauswerfen ''Num' Variable ist nicht gesetzt'
anders
rauswerfen ''Num ist gesetzt und der Wert von Num=$num'
Sein

Führen Sie das Skript aus.



$bashcheckvar1.sh

Beispiel-2: Überprüfen Sie, ob die Variable mit Parameter-Ersatz gesetzt oder nicht gesetzt ist

Erstellen Sie eine Bash-Datei mit dem Namen check_var2.sh und fügen Sie das folgende Skript hinzu. Hier wird der Variablen ein String-Wert zugewiesen, $str bevor überprüft wird, ob die Variable gesetzt oder nicht gesetzt ist. Die 'if'-Bedingung gibt true zurück und die Nachricht, Die Variable ’str’ ist gesetzt und der Wert ist Hello drucken wird.

check_var2.sh

#!/bin/bash
#Setze die Variable
P=Hallo
# Weisen Sie checkval den Wert World zu, wenn die str-Variable gesetzt ist
Prüfwert=${str+Welt}
#Überprüfen Sie, ob die Variable gesetzt oder nicht gesetzt ist
wenn [ $checkval -eqWelt];dann
rauswerfen ''str' Variable ist gesetzt und der Wert ist$ str'
anders
rauswerfen ''str' Variable ist nicht gesetzt'
Sein

Führen Sie das Skript aus.

$bashcheckvar2.sh

Beispiel-3: Überprüfen Sie, ob die Variable leer ist oder nicht

Erstellen Sie eine Bash-Datei mit dem Namen check_var3.sh und fügen Sie das folgende Skript hinzu. Das Skript speichert das erste Befehlszeilenargument in einer Variablen, $argv das wird in der nächsten Anweisung getestet. Die Ausgabe wird sein Das erste Argument ist leer wird kein Argument übergeben, sonst wird der Wert des ersten Arguments ausgegeben.

check_var3.sh

#!/bin/sh
#Lesen Sie den ersten Befehlszeilenargumentwert
argv='$1'
#Überprüfen Sie, ob der erste Argumentwert angegeben wurde oder nicht
[ -v '$argv' ] && rauswerfen 'Erstes Argument ist leer' ||
rauswerfen 'Der Wert des ersten Arguments ist$argv'

Führen Sie das Skript ohne Argumente aus.

$bashcheckvar3.sh

Führen Sie das Skript mit einem Argument aus.

$bashcheckvar3.shPrüfung

Abschluss

In diesem Tutorial werden anhand verschiedener Beispiele verschiedene Möglichkeiten gezeigt, um zu überprüfen, ob die Variable gesetzt oder nicht gesetzt oder leer ist. Hoffe, dieses Tutorial wird den Benutzern helfen, die Möglichkeiten zum Testen jeder Bash-Variablen zu erlernen.