文字列の変換を行おうとして下記のファイルが存在します
test.txt
16 = {num1} * {num2}
こちらのnum1とnum2をコマンドで変換したいため下記のようにシェルを組んでます。
TEST=`cat test.txt` echo ${TEST} | sed -e "s/{num1}/'2'/g" | sed -e "s/{num2}/'3'/g" 6 = '2' test.txt '3'
上記のようにワイルドカードの部分にファイル名が表示されてしまいます。
ワイルドーカードを残したままで
6 = 2 * 3
とするにはどのようにすればよろしいでしょうか
${TEST} をダブルクォートで囲みます。
echo "${TEST}" | sed -e "s/{num1}/'2'/g" | sed -e "s/{num2}/'3'/g"
回答1件
あなたの回答
tips
プレビュー