文字列を連結して、csh スクリプト file1.csh でコマンド文字列を作成したいと考えています。しかし、csh は commandString 変数のエラーを出し続けており、何が間違っていたのかよくわかりません。ここにコードの一部があります。
set var1 = "Hat"
set var2 = 100
set embeddedString = 's/'$var1' =.*$/'$var1' = '$var2'/g'
set commandString = "sed -i ' "$embeddedString" ' productPrice.txt"
echo $commandString
私の目標は、commandString 変数を次のように設定することです。
sed -i 's/Hat =.*$ /Hat = 100/g' productPrice.txt
次に、この commandString が別のスクリプト ファイル file2.csh に挿入されます。file2.csh は、ハットの価格の置換コマンドを実行する実際のスクリプト ファイルです。また、var1 と var2 の値は priceUpdateList.txt ファイルから読み取られるため、固定値ではありません。つまり、commandString 変数に単純に Hat と 100 を入力することはできません。csh でコマンド文字列を生成するために引用符を正しく使用する方法を知っている人はいますか?
どうもありがとうございました。