1

私はこのコードを持っています

for p in "abra/cadabra reach/out"
do
        r="$HOME/x/$p"
        echo $r
done

しかし、それはこれを生み出すだけです:

/Users/terrencemonroebrannon/x/abra/cadabra reach/out

いいえ

/Users/terrencemonroebrannon/x/abra/cadabra /Users/terrencemonroebrannon/x/reach/out

私が期待するように。

4

2 に答える 2

5

2つのアイテムを引用符で囲みました。これは、bashが単一のトークンとして解釈します。それが引用の目的です。引用符を削除すると、説明した動作が得られます。

for p in abra/cadabra reach/out
do
        r="$HOME/x/$p"
        echo $r
done

私に与える:

/Users/lars/x/abra/cadabra
/Users/lars/x/reach/out
于 2012-04-19T15:26:45.243 に答える
2

bashは"abra/cadabra reach/out"1つのトークンとして表示されます。
引用符は必要ありません。

for p in abra/cadabra reach/out
do
        r="$HOME/x/$p"
        echo $r
done
于 2012-04-19T15:26:43.767 に答える