In Bash kann man Argumente entkommen, die Leerzeichen enthalten.Build-Argument-Listen mit Leerzeichen
foo "a string"
Dies gilt auch für Argumente auf einen Befehl oder eine Funktion funktioniert:
bar() {
foo "[email protected]"
}
bar "a string"
So weit so gut, aber was ist, wenn ich vor dem Aufruf foo
die Argumente manipulieren will?
funktioniert das nicht:
bar() {
for arg in "[email protected]"
do
args="$args \"prefix $arg\""
done
# Everything looks good ...
echo $args
# ... but it isn't.
foo $args
# foo "$args" would just be silly
}
bar a b c
Wie baut man Listen Argument, wenn die Argumente Leerzeichen enthalten?
Verdammt, hätte früher hier sein sollen - könnte dir die Arbeit erspart haben :) – hop