私はcURLの出力を次のような変数に割り当てようとしています:
#!/bin/sh
$IP=`curl automation.whatismyip.com/n09230945.asp`
echo $IP
sed s/IP/$IP/ nsupdate.txt | nsupdate
ただし、スクリプトを実行すると、次のようになります。
./update.sh: 3: =[my ip address]: not found
出力を$IP
正しく取得するにはどうすればよいですか?
受け入れられた答えは正しいですが、その例とここにあるものの間には別の小さな違いがあります。echoに渡された$ IP変数が二重引用符で囲まれていない場合、キャプチャされたcurl出力の最後の行のみが出力されます。
—
クリストファーハンター
@ChristopherHunterのおかげで、私はこれを探しているだけでここに来ました。なぜそれがこのように振る舞うのですか?
—
アミー
@Amey理由を正確に述べることはできません。これが、複数行の文字列を引数として指定したときのエコーの動作です。
—
クリストファーハンター