vi一括置換
基本
カレント行で最初に出現するoldというパターンをnewに置き換える。
:s/old/new/
カレント行のすべてのoldをnewに変換する。
:s/old/new/g
- g 一括置換
ファイル全体ですべてのoldをnewに変換する。
:%s/old/new/g
置換の確認
一括置換をする前にファイルを:wでセーブしておく。もし間違って置換しても編集内容をセーブせずに放棄できる。
置換前に確認
:%s/old/new/gc
- c 置換前に確認する
replace with bar (y/n/a/q/l/^E/^Y)?
というかんじでステータスラインに確認メッセージがでた。yで置換されて次の候補へ。nだと置換せずに次の候補へ。
nコマンドと.のペアでの置換確認
- n
- 最後の検索の繰り返し
- .
- 最後のコマンドの繰り返し
例)whichを使った部分を1つ1つチェックしていって置換したいものだけ置換
[Esc] コマンドモードへ(もしなっていなかったら) /which whichを検索 cwthat thatに置換する n 次のwhichへ n (置換せずに)次のwhichへ . 置換する(whichをthatに変える)