vi/vimで範囲指定して置換する方法
小粋空間 » Linux » vi/vimで範囲指定して置換する方法
vi/vimで範囲指定して置換する方法を紹介します。
1.問題点
vi/vimで置換するには
:%s/[検索文字列]/[置換文字列]/
一括置換であれば
:%s/[検索文字列]/[置換文字列]/g
ですが、範囲を指定して置換する方法が分かりません。
ということで、vi/vimで範囲指定して置換する方法を紹介します。
2.範囲指定して置換する
範囲指定して置換するには、マーク機能を併用します。
まず、置換したい範囲の開始行で
ms
を入力します。
次に置換したい範囲の終了行で、
me
を入力します。
そして、コマンドモードで、
:'s,'es/[検索文字列]/[置換文字列]/
を入力すれば、指定した範囲だけが置換されます。
vimの場合、範囲外の行にある対象文字列が反転するようです。