So erhalten Sie Argumente mit Flags in Bash

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 zu übergeben, einschließlich der Verwendung von Flags zur Übergabe optionaler Argumente. In diesem Artikel wird erläutert, wie Argumente mit Flags in Bash abgerufen werden.

Argumente mit Flags in Bash abrufen

Um Argumente mit Flags in Bash abzurufen, können Sie den Befehl „getopts“ verwenden. Der Befehl „getopts“ ist eine in Bash integrierte Funktion, die zum Parsen von Befehlszeilenoptionen und -argumenten verwendet werden kann. Es braucht drei Argumente: die Optionszeichenfolge, die Variable zum Speichern der aktuellen Option, und der Name der Variablen zum Speichern der restlichen Argumente. Hier ist ein Beispiel:

#!/bin/bash

while getopts „:x:y:“ opt; Tun

Fall $opt-in

X)

arg1=“$OPTARG“

;;

y)

arg2=“$OPTARG“

;;

\?)

echo „Ungültig: -$OPTARG“ >&2

;;

🙂 🙂

echo „Option -$OPTARG erfordert ein Argument.“ >&2

;;

esac

Erledigt

Verschiebung $((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“ speichert die aktuelle Option, und die Variablen „arg1“ und „arg2“ speichern die entsprechenden Argumente.

Die „case“-Anweisung wird verwendet, um jede Option zu verarbeiten. Wenn die Option also „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, selbst wenn eine Option eines erfordert.

OPTARG wird zum Speichern des Werts des Arguments verwendet, das mit den Optionen -x oder -y übergeben wird, während OPTIND-1 zum Verschieben der Positionsparameter verwendet wird, um die Optionen und ihre Argumente auszuschließen und nur die Nicht-Optionsargumente übrig zu lassen.

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

./

Abschluss

Durch die Verwendung von Flags zur Übergabe optionaler Argumente an Bash-Skripte können Skripte flexibler und leistungsfähiger werden. Mit dem Befehl „getopts“ können Sie Argumente und Befehlszeilenoptionen einfach analysieren. Indem Sie dem Beispiel in diesem Artikel folgen, können Sie Flags in Ihren eigenen Bash-Skripten implementieren und diese problemlos handhaben.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Nach oben scrollen