Bash – Wie übergebe ich Parameter mithilfe eines Arrays?

Bash – Wie übergebe ich Parameter mithilfe eines Arrays?

Ich versuche, ein Programm mit vielen Parametern wie folgt auszuführen:

./some-program -c 1 -c 2 -c 3 ...

Wie erstelle ich einen solchen Befehl im Bash-Shell-Skripting?

Antwort1

Wenn Sie ein Array von Argumenten erstellen möchten:

args=(-c 1 -c 2 -c 3)
./some-program "${args[@]}"

Sie können dem Array auch den folgenden Befehl hinzufügen:

args=(./some-program -c 1 -c 2 -c 3)
"${args[@]}"

Oder wenn Sie Ihre Parameter nacheinander hinzufügen, könnten Sie etwas wie

args=()
args+=(-c)
args+=(1)
args+=(-c 2)
args+=(-c 3)
./some-program "${args[@]}"

verwandte Informationen