0

以下のようなシェルスクリプトがありtest.shます。

sudo -H sh -c '
    echo $1;    
'

しかし、./test.sh abcd何もエコーしていないので、このスクリプトを実行しています。次に、以下のようにスクリプトを変更しました。

sudo -H sh -c '
    echo \$1;    
'

しかし今、出力を として表示してい$1ます。として出力を取得するには、ここでどのような変更を行う必要がありますかabcd。シェルスクリプト初心者なのでアドバイスお願いします。

ありがとう。

4

2 に答える 2

2

これを試して:

sudo -H sh -c "
  echo $1;    
"

sudo親に渡された引数について何も知らない新しいシェルでコマンドを実行するため、新しい(サブ)シェルでコマンド文字列を実行する前にそれらを展開する必要があります。

于 2013-07-30T07:06:08.200 に答える