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

Fumbani Banda 30 Januar 2023
  1. Verwenden der Option -z, um zu prüfen, ob die Variable in Bash leer ist
  2. Verwenden der Option -n, um zu prüfen, ob die Variable in Bash leer ist
  3. Überprüfen Sie, ob eine Variable in Bash leer ist - Vergleichen Sie mit einer leeren Zeichenfolge
  4. Prüfen Sie, ob eine Variable in Bash leer ist – Prüfen Sie mit der Ersetzungsmethode
Überprüfen Sie, ob die Variable in Bash leer ist

Dieses Tutorial veranschaulicht die Überprüfung, ob eine Variable in Bash leer ist, mithilfe des Testbefehls mit den Optionen -z und -n.

Verwenden der Option -z, um zu prüfen, ob die Variable in Bash leer ist

Wir verwenden den Befehl test mit der Option -z. Die Option -z prüft, ob die Länge der String-Variable 0 ist.

Wenn die Länge der String-Variable 0 ist, gibt der Test true zurück und das Skript gibt auf der Standardausgabe aus, dass die String-Variable leer ist. Und wenn die Länge der String-Variable nicht 0 ist, gibt das Skript aus, dass die String-Variable nicht leer ist.

Der greet-Variablen ist im folgenden Fall ein String zugewiesen. Während des Tests wird die Variable greet überprüft, ob die Länge des darin gespeicherten Stringwerts die Länge 0 hat.

Da die greet-Variable die Zeichenfolge Hi hat, der zwei Zeichen zugeordnet sind, gibt der Test false zurück und das Skript gibt auf der Standardausgabe aus, dass die greet-Variable nicht leer ist.

greet='Hi'

if [ -z "$greet" ]
then
    echo "\$greet is empty"
else
    echo "\$greet is not empty"
fi

Ausgabe:

$greet is not empty

Die Variable greet wird im folgenden Skript einem leeren String zugewiesen. Die Variable greet wird mit dem Befehl test/[ überprüft, ob die Länge ihres Stringwerts 0 ist.

Da die greet-Variable einem leeren String zugewiesen ist, gibt der Test true zurück und das Skript gibt auf der Standardausgabe aus, dass die greet-Variable leer ist.

#!/bin/bash

greet=''

if [ -z "$greet" ]
then
    echo "\$greet is empty"
else
    echo "\$greet is not empty"
fi

Ausgabe:

$greet is empty

Verwenden der Option -n, um zu prüfen, ob die Variable in Bash leer ist

Das folgende Skript verwendet den Testbefehl mit der Option -n, um zu prüfen, ob eine String-Variable leer ist. Die Option -n prüft, ob die Länge des Werts in der String-Variable nicht Null ist.

Wenn die Länge des Strings in der Variablen nicht Null ist, gibt der Test true zurück und gibt aus, dass die Variable nicht leer ist. Wenn die Länge der String-Variable Null ist, gibt der Test false zurück und gibt aus, dass die Variable leer ist.

Die Variable greet wird im folgenden Skript einem leeren String zugewiesen. Wenn die greet-Variable mit dem test-Befehl überprüft wird und die Länge der darin gespeicherten Zeichenfolge ungleich Null ist, gibt sie false zurück und das Skript führt den Befehl im else-Abschnitt aus.

#!/bin/bash

greet=''

if [ -n "$greet" ]
then
    echo "\$greet is not empty"
else
    echo "\$greet is empty"
fi

Ausgabe:

$greet is empty

Die Variable Greet wurde im folgenden Skript Hi zugewiesen, einer Zeichenfolge mit zwei Zeichen.

Der Test, der prüft, ob die Länge des Strings in der greet-Variable ungleich Null ist, gibt true zurück, weil der greet-Variable ein String mit zwei Zeichen zugewiesen ist. Das Skript gibt auf der Standardausgabe aus, dass die Variable greet nicht leer ist.

#!/bin/bash

greet='Hi'

if [ -n "$greet" ]
then
    echo "\$greet is not empty"
else
    echo "\$greet is empty"
fi

Ausgabe:

$greet is not empty

Überprüfen Sie, ob eine Variable in Bash leer ist - Vergleichen Sie mit einer leeren Zeichenfolge

Wir können überprüfen, ob der Wert leer ist, indem wir ihn mit "" vergleichen.

x="Non-empty variable"
if [[ "$x" == "" ]]; then
    echo "x is empty"
else
    echo "x is not empty"
fi

Überprüfen Sie, ob eine Variable in Bash leer ist - Vergleichen Sie mit einer leeren Zeichenfolge

Prüfen Sie, ob eine Variable in Bash leer ist – Prüfen Sie mit der Ersetzungsmethode

Wenn x definiert ist, wird der Ausdruck durch test ersetzt, sonst null.

if [ ${x:+test} ]; then
    echo "x is not empty"
else
    echo "x is empty"
fi

Überprüfen Sie, ob eine Variable in Bash leer ist - Vergleichen Sie mit einer leeren Zeichenfolge

Fumbani Banda avatar Fumbani Banda avatar

Fumbani is a tech enthusiast. He enjoys writing on Linux and Python as well as contributing to open-source projects.

LinkedIn GitHub

Verwandter Artikel - Bash Variable