Argument übergeben, das Leerzeichen im Shell-Skript enthält

Aus irgendeinem Grund muss ich mein script in der Lage sein zu akzeptieren, Argumente mit Leerzeichen. Wenn ich z.B. ein Skript, wie folgt,

for SOME_VAR in $@
do
    echo "$SOME_VAR"
    cd "$SOME_VAR"
done;

wenn ich Argumente an das Skript (vorausgesetzt, es ist genannt foo.sh)

sh foo.sh "Hello world"

Ich gehe davon aus, dass das Skript zu drucken Hallo Welt und wechseln Sie in das Verzeichnis "Hello world". Aber ich bekomme diese Fehlermeldung, anstatt

hello
cd: 5: can't cd to hello
world
cd: 5: can't cd to world

also wie genau gebe ich die Auseinandersetzung mit Raum char auf einen Befehl in einem shell-Skript aus?!

InformationsquelleAutor der Frage Jeffrey04 | 2009-05-25

Schreibe einen Kommentar