Überprüfen die Anzahl der Argumente in Linux Bash

Yahya Irmak 30 Januar 2023
  1. Befehlszeilenargumente in Bash abrufen
  2. Überprüfen die Anzahl der Argumente in Bash
Überprüfen die Anzahl der Argumente in Linux Bash

Das Bash-Skript benötigt möglicherweise eine bestimmte Anzahl von Befehlszeilenargumenten, um ausgeführt zu werden. In diesem Artikel erklären wir, wie Sie Befehlszeilenargumente in Linux Bash verwenden. Wir werden auch klären, wie die Anzahl der Argumente überprüft werden kann.

Befehlszeilenargumente in Bash abrufen

Beim Ausführen eines Bash-Skripts wird jeder Wert nach dem Programmnamen als Argument an das Programm übergeben. Wir haben ein Beispiel dafür, wie wir diese Argumente erhalten können.

Der Inhalt der Datei example.sh ist unten aufgeführt.

echo "Program name: $0"
echo "First argument: $1"
echo "Second argument: $2"

Lassen Sie uns das Programm ausführen und das Ergebnis sehen.

./example.sh hello world

Befehlszeilenargumente abrufen

Wie Sie sehen können, ist der Programmname das nullte Argument. Jeder Wert nach dem Programmnamen wird sequentiell genommen.

Holen Sie sich die Werte aller Argumente in Bash

Wir können den Befehl $* oder $@ verwenden, um alle als Argumente angegebenen Werte anzuzeigen.

echo "Args with *: $*"
echo "Args with @: $@"

Dieser Code gibt mit beiden Befehlen alle als Argumente angegebenen Werte auf dem Bildschirm aus.

Holen Sie sich die Werte aller Argumente

Überprüfen die Anzahl der Argumente in Bash

Wir können den Befehl $# verwenden, um die Anzahl der Werte zu finden, die als Argumente für den Bash-Befehl angegeben wurden. Zum Beispiel können wir diesen Befehl verwenden, um zu verhindern, dass das Programm ohne die erforderliche Anzahl von Argumenten ausgeführt wird.

if [ "$#" != "2" ]; then
    echo "You must provide two args."
else
    echo "Welcome!"
fi

Dieses Programm wird nicht weiter ausgeführt, wenn es nicht mit genau zwei Argumenten ausgeführt wird.

Überprüfen Sie die Anzahl der Argumente

Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn

Verwandter Artikel - Bash Argument