一連のseds///
コマンドをファイルに入れることができます。
$ cat change.sed
s/{TEST}/50/g
s/{FIRST_NAME}/Alex/g
次の構成入力がある場合:$ cat test.js.config alert({TEST})alert({FIRST_NAME})
結果は次のようになります。
$ sed -f change.sed test.js.config > test.js
$ cat test.js
alert(50)
alert(Alex)
構文は素晴らしいものではありませんが、恐ろしいものでもありません:)
OTOH、置換ファイルでブラケット構文を本当に使用したい場合は...
$ cat test.js.config
alert({TEST})
alert({FIRST_NAME})
...および置換ファイルのキーと値のペア...
$ cat change.txt
TEST=50
FIRST_NAME=Alex
... sedコマンドを記述して、sed置換のキーと値のペアを変更できます...
$ sed 's#\(.*\)=\(.*\)#s/{\1}/\2/g#' change.txt
s/{TEST}/50/g
s/{FIRST_NAME}/Alex/g
...そして実際の置換でこのコマンドを使用します:
$ sed "$(sed 's#\(.*\)=\(.*\)#s/{\1}/\2/g#' change.txt)" test.js.config > test.js
$ cat test.js
alert(50)
alert(Alex)