スペースや特殊文字を含む引数をコマンドラインで引用できますか?そうでない場合は、どうやって処理するのですか?マルチワード文字列である1つの引数があります。私はこれが何度も尋ねられたと確信していますが、私はそれを見つけることができません。引数文字列を引用符で囲むシェル
./myscript name=bob occupation=guy who does stuff
スペースや特殊文字を含む引数をコマンドラインで引用できますか?そうでない場合は、どうやって処理するのですか?マルチワード文字列である1つの引数があります。私はこれが何度も尋ねられたと確信していますが、私はそれを見つけることができません。引数文字列を引用符で囲むシェル
./myscript name=bob occupation=guy who does stuff
引用符を使用できます。次のようなものがあります。
$ var='abc def'
$ echo "$var"
abc def
詳細hereを読むことができます。
あなたの事例(私はこの例では、別のスクリプトから複数ワード文字列を必要とするスクリプトを呼び出しています)。
sh ./test.sh 'this is a test'
echo $1
とプリントthis is a test
が含まれていtest.sh。このソリューションがうまくいきたいですね。
質問の資料でデモンストレーションしてみませんか? –
@JonathanLeffler十分にはっきりしていますが。そのような引数で呼び出されるスクリプトの例を追加しました。 – Wald
実際には、スペースやその他の特殊文字で引数を引用する必要があります。 – anubhava
'./myscript name = bob occupation =" stuff "を実行する人を書こうとしましたか? – zezollo
あるいは './myscript '名= bob' '職業=物事をする人'、' ./myscript na'me '= "bo" b occupation = guy \ who \ does \ stuff'を試すことができます。文字列を引用するには多くの方法があります。 –