So überprüfen Sie das Vorhandensein von Eingabemarions in einem Bash -Shell -Skript

So überprüfen Sie das Vorhandensein von Eingabemarions in einem Bash -Shell -Skript
Bash -Shell -Skripting ist ein leistungsstarkes Werkzeug zur Automatisierung von sich wiederholenden Aufgaben und zur Ausführung komplexer Vorgänge in der Befehlszeile. Eines der grundlegenden Konzepte beim Shell -Skripting ist es, Eingabemarions vom Benutzer oder von anderen Skripten zu akzeptieren. Wenn Sie sich mit Eingabeargumenten befassen, ist es wichtig zu überprüfen. In diesem Artikel werden verschiedene Möglichkeiten erörtert, um die Existenz von Eingabemargumenten in einem Bash -Shell -Skript zu überprüfen.

So überprüfen Sie das Vorhandensein von Eingabemarions in einem Bash -Shell -Skript

Es gibt drei verschiedene Arten:

  1. Verwenden des Befehls "Test"
  2. Verwenden der Variablen "$#"
  3. Verwenden Sie die Option "-n"

Methode 1: Verwenden des Befehl "Test"

Der Befehl "Test", auch als "[" -Fehl "[" bekannt, ist ein integrierter Befehl in Bash, der auf verschiedene Bedingungen testet. Eine der Bedingungen, die wir mit dem Befehl „Test“ testen können, ist, ob eine Variable existiert oder nicht. Hier ist ein Beispielcode, um zu überprüfen, ob ein Eingabargument mit dem Befehl „Test“ vorhanden ist:

#!/Bin/Bash
Wenn [-z "$ 1"]
Dann
Das Echo "Eingabargument fehlt."
Ausgang 1
fi
Echo "Input -Argument existiert."

Hier wird die Option "-z" mit dem Befehl "test" verwendet, um zu überprüfen, ob das Eingabemargument eine leere Zeichenfolge ist oder nicht. Das Skript gibt eine Fehlermeldung aus und beendet mit einem Statuscode von 1, wenn das Eingabeargument eine leere Zeichenfolge ist. Andernfalls wird das Skript weiter ausführen. Im Folgenden habe ich Argument für den Code angegeben und eingibt, sodass es die Meldung der Existenz der Argumentationseingabe angezeigt wird:

Methode 2: Verwenden der Variablen "$#"

Der "$#" Variable speichert die Anzahl der an ein Skript übergebenen Eingabeargumente. Wenn das Skript mindestens ein Eingabeargument erwartet, können wir prüfen, ob die "$#" Variable ist größer als Null. Hier ist ein Beispielcode, um zu überprüfen, ob mindestens ein Eingabargument verwendet wird "$#" Variable:

#!/Bin/Bash
Wenn [$# -Eq 0]
Dann
Das Echo "Eingabargument fehlt."
Ausgang 1
fi
Echo "Input -Argument existiert."

Hier das "-Eq" Der Bediener wird verwendet, um zu überprüfen, ob die "$#" Die Variable entspricht Null oder nicht und wenn die Variable „$#“ gleich Null ist, zeigt das Skript eine Fehlermeldung an und beendet einen Statuscode von 1. Andernfalls wird das Skript weiter ausführen. Im Folgenden habe ich Argument für den Code angegeben und eingibt, sodass es die Meldung der Existenz der Argumentationseingabe angezeigt wird:

Methode 3: Verwenden der Option "-n"

Der "-N" Die Option wird verwendet, um zu überprüfen, ob eine Variable nicht leer ist. Wir können diese Option verwenden, um zu überprüfen, ob das Eingabargument vorliegt oder nicht. Im Folgenden habe ich einen Beispielcode angegeben, der überprüft, ob ein Eingabemargument mit dem vorhanden ist "-N" Möglichkeit:

#!/Bin/Bash
Wenn [-n "$ 1"]
Dann
Echo "Input -Argument existiert."
anders
Das Echo "Eingabargument fehlt."
Ausgang 1
fi

Hier das "-N" Die Option wird verwendet, um zu überprüfen, ob das Eingabargument nicht leer ist. Wenn das Eingabargument nicht leer ist, zeigt das Skript eine Erfolgsnachricht an. Andernfalls zeigt das Skript eine Fehlermeldung an und beendet mit einem Statuscode von 1, den ich unten angegeben habe, und geben Sie Argument für den Code ein, sodass es die Meldung der Existenz der Argumentation eingibt:

Abschluss

Bei Shell Scripting ist die Überprüfung der Existenz von Eingabeargumenten ein wesentlicher Schritt, um sicherzustellen, dass das Skript wie erwartet ausgeführt wird. Wir können verschiedene Techniken verwenden, um die Existenz von Eingabemargumenten zu überprüfen, z. B. den Befehl „Test“, die Variable „$#“ oder die Option „-n“. Durch die Implementierung dieser Techniken erstellen wir robustere und zuverlässigere Shell -Skripte, die Eingabebereich verarbeiten können.