次のような変数を含む多くのファイルがあります
{$var1} some text {$var2} some other text
awk がそれらを抽出し、次のような結果が得られるように、それらを awk に渡したいと思います。
file_name.htm - 8 : {$title}
file_name.htm - 10 : {$css_style}
file_name.htm - 33 : {$img_carte_image_02_over}
これは、この awk スクリプトを使用したケーキです。
#!/usr/bin/gawk -f
BEGIN { }
match($0, /({.*\$.+})/, tab) {
for (x=1; tab[x]; x++) {
print FILENAME" - "FNR" : "substr($0, tab[x, "start"], tab[x, "length"])
}
}
END { }
私はそれを次のように呼んでいます:
find website/ | grep -E '(html|htm)$' | xargs ./myh.sh | more
複数の変数が同じ行にある場合を除いて、すべて正常に機能します。この場合、次のようになります。
file_name.htm - 59 : {$var1}<br/>{$var2}
私が欲しいのに対し:
file_name.htm - 59 : {$var1}
file_name.htm - 59 : {$var2}
どうすればいいですか?もちろん、別の解決策 (sed などを使用) があれば、それで問題ありません。
どうもありがとう!