2009年10月20日火曜日

"sed"の復習(外部ファイル)

スズキです。

"mod_ext_filter"で適当なコマンドで文字列置換するので、
そのコマンドにsedを利用しようと思っての復習です。

置換元ファイルはこんな感じです。

-------sample.txt--------
sample1 sample2
sample3 sample4
--------

今回は、置換ルールは外部ファイルということで、
こんな、簡単なものを用意しました。

--------sample1.sed--------
s/s/S/
--------

で、実行です。

# sed -f sample1.sed < sample.txt
Sample1 sample2
Sample3 sample4

行の最初にマッチングしたものしか置換されません。
全部置換するには、下記のように"g"をつけます。

--------sample2.sed--------
s/s/S/g
--------

で、また実行です。

# sed -f sample2.sed < sample.txt
Sample1 Sample2
Sample3 Sample4

置換ルールはこんな感じに複数かけます。

--------sample3.sed--------
s/s/S/g
s/a/A/g
--------

で、これも実行です。

# sed -f sample3.sed < sample.txt
SAmple1 SAmple2
SAmple3 SAmple4

よし、思い出してきたぞ!

--------
http://www.suz-lab.com

0 コメント: