夜行録 - 酔歩.net

日暮れて道遠し さらに夜道を行く もって夜行録と名付く

sed で改行を挟んだ正規表現を使う話

sedの正規表現の中に改行を含めるのは不可能なので、一旦 N コマンドを使って次の行と連結する。
連結しただけでは意味がないので、連結と次のコマンドをセットで行なわなければならない。ワンライナーでも、普通にセミコロンで区切って複数コマンドが書ける。即ち、

sed -e '/foo$/N;s/foobaa/vaz/g'

ちなみに、一つのアドレスの後ろに {} を置いてその中に複数コマンドを記述することも可能だそうだ。この場合、 {} の中にアドレス+コマンドも書ける。

sed メモ

大分まえに書きかけた記事を復活させてみた。
古い日記のアーカイブをこちらに持ってくるときに、あれこれ sed で直した時のノウハウ(?)の一部。

2008年03月03日 (Mon) - 19:45:49 - その他雑記 - 9003x - permalink
Karma points: 4. Do you like this article? [yes/no]