[[KEY]]
HTMLファイルの1つの二重括弧をVALUE
別のファイルで使用できる.key値に置き換える必要があります。交換したら、出力を別のファイルに入れる必要があります。
したがって、パラメータには2つの入力ファイルと1つの出力ファイルがあります。
HTMLファイル:foo.html
<html>
<head>
<title>[[title]]</tittle>
</head>
<body>[[body]]</body>
</html>
プロパティファイル:foo.properties
title=foo title
body= foo body
結果ファイル
<html>
<head>
<title>foo title</tittle>
</head>
<body>foo body</body>
</html>
パラメータにすべてのファイル名を渡してbashスクリプトを作成するには?
ベストアンサー1
そしてsed
:
sed -f <(sed 's/\(.*\)=\(.*\)/s\/\\[\\[\1\\]\\]\/\2\//' foo.properties) foo.html
内部呼び出しは検索と代替のペアを設定し、外部sed(スクリプトファイル)から読み取られますsed
。-f
次のようにsed
ファイルからコマンドを生成します。foo.properties
s/\[\[name\]\]/replace string/
これらは2番目のファイルに対して読み取られ実行されますfoo.html
。