二重括弧値の検索と置換

二重括弧値の検索と置換

[[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

おすすめ記事