command
予想される動作を取得するには、変数をどのように作成する必要がありますか?
#!/bin/bash
function f ( )
{
echo "$2"
}
command="f --option=\"One Two Three\" --another_option=\"Four Five Six\""
$command
f --option="One Two Three" --another_option="Four Five Six"
最初の呼び出しは間違っていますが、2番目の呼び出しは正しいです。
$> ./test.sh
Two
--another_option=Four Five Six
答え1
BASH FAQ項目#50:「コマンドを変数に入れようとしていますが、複雑なケースは常に失敗します!」
重要な要約:配列を使用してください。
command=(f --option="One Two Three" --another_option="Four Five Six")
"${command[@]}"