Wie man Argumente mit Flaggen in Bash bekommt

Wie man Argumente mit Flaggen in Bash bekommt
Bash ist eine weit verbreitete Shell- und Befehlssprache, die in UNIX- und Linux -Systemen verwendet wird. Es bietet verschiedene Möglichkeiten, Argumente an Shell -Skripte weiterzugeben, einschließlich der Verwendung von Flags, um optionale Argumente zu übergeben. In diesem Artikel wird erläutert, wie Sie Argumente mit Flags in Bash erhalten können.

Argumente mit Flaggen in Bash erhalten

Um Argumente mit Flags in Bash zu erhalten, können Sie den Befehl „getopts“ verwenden. Der Befehl „getopts“ ist eine integrierte Funktion in Bash, mit der Befehlszeilenoptionen und Argumente analysiert werden können. Es braucht Drei Argumente: die Optionszeichenfolge, die Variable, um die aktuelle Option zu speichern, und der Name der Variablen, um die verbleibenden Argumente zu speichern. Hier ist ein Beispiel:

#!/Bin/Bash
Während des Getopts ": x: y:" opt; Tun
Fall $ $ entscheiden
X)
arg1 = "$ optarg"
;;
y)
arg2 = "$ optarg"
;;
\?)
echo "ungültig: -$ optarg"> & 2
;;
:)
Echo "Option -$ optarg erfordert ein Argument."> & 2
;;
ESAC
Erledigt
verschieben $ ((optind-1))
Echo "Argument 1: $ arg1"
Echo "Argument 2: $ arg2"

Hier wird der Befehl "getopts" verwendet, um die Befehlszeilenoptionen "-x" und "-y" zu analysieren. Das Zeichen „:“ Nach jeder Option gibt an, dass die Option ein Argument erfordert und die Variable "Opt" die aktuelle Option speichert, und die Variablen "Arg1" und "Arg2" speichern die entsprechenden Argumente.

Die Anweisung „Fall“ wird verwendet, um jede Option zu behandeln. Wenn die Option "x" ist, wird das Argument in "Arg1" gespeichert. Wenn die Option "Y" ist, wird das Argument in "Arg2" gespeichert.Eine Fehlermeldung wird angezeigt, wenn eine ungültige Option angegeben wird, sowie wenn kein Argument angegeben wird.

Der Optarg wird verwendet, um den Wert des Arguments zu speichern, das mit den Optionen -x oder -y übergeben wird, während Optind -1 verwendet wird, um die Positionsparameter zu verschieben, um die Optionen und ihre Argumente auszuschließen, so.

Nach dem Parsen der Optionen wird der Befehl „Shift“ verwendet, um die Optionen aus der Argumentliste zu entfernen. Dies stellt sicher, dass die verbleibenden Argumente in der richtigen Variablen gespeichert werden.Um das Skript mit Flags zu verwenden, können Sie das Skript mit den Flag -Optionen und Argumenten wie folgt ausführen:

./ - -

Abschluss

Verwenden von Flags, um optionale Argumente an das Verknüpfen von Skripten zu übergeben, können Skripte flexibler und leistungsfähiger machen. Mit dem Befehl „getopts“ können Sie Argumente und Befehlszeilen problemlos analysieren. Wenn Sie dem Beispiel in diesem Artikel folgen, können Sie Flags in Ihren eigenen Bash -Skripten implementieren und diese mühelos verarbeiten.