3 つの引数を必要とするシェル スクリプトを実行したいと考えています。
引数番号 2 には、スペースを含む文字列が含まれています
次のように、すべての引数を 1 つの変数に入れたいとします。
Linux:~# kk="\"111\" \"222 222\" \"333\""
Linux:~# echo $kk
"111" "222 222" "333"
関数を呼び出すと、次のようになります。
func() {
echo ---$1---
echo ---$2---
echo ---$3---
}
このように $kk 変数を使用して
func $kk
そしたら返ってくる
Linux:~# func $kk
---"111"---
---"222---
---222"---
そして、私はこの結果が得られることを期待していました
---111---
---222 222---
---333---
を使用せずにこの問題を解決するにはeval
?
この問題を解決することはわかっていeval
ますが、使用したくありません (そのような呼び出しを何度も実行すると時間がかかるため)。