sed体験。
Linuxツールを浅く広く体験していく人気コーナーの時間です。(ホントは全然人気無し)
L(U)nix使いの人は、テキストの置換は、perlではなく、sedを使う。sedの何が魅力なのかイマイチピンと来ていなかった。perlの方が断然強力じゃないのぉ〜?
僕が知っていたのは、
$ ls -l | sed s/tanaka/root/g #rootに化けてみた。ふふ。
こんな感じ。至って普通の置換です。sedを使えば、正規表現で置換出来ること位は知ってる。
何故、sedなのか?何故、古典的ツールが現在まで使いつづけられているのか。色々調べてみると、sedの強力さが段々わかってきた。
sedはstream editorの略。つまり、"editor"なのですよ!!
# パターンにマッチした行の削除(delete) /パターン/d # パターンにマッチした行の後ろに挿入(append) /パターン/a\ 挿入文字列 # パターンにマッチした行の前に追加 (insert) /パターン/i\ 追加文字列 # パターンにマッチした行を変更(change) /パターン/c\ 変更文字列
つまり、"s"はコマンドの一部の機能でしかない!!やはりL(U)nixツール。桁違いに強力ですねぇ・・・。infoを読もう。
`sed' is a stream editor.(Introductionより)