vimで複数ファイルにまたがる特定のパターンを置換する場合のお作法

grep-edit.el無双

vimの場合だと、、
ファイルが既にバッファに読み込まれているならbufdoでもいいけど、そうでなければ
argsコマンドで対象となるファイルを選び出して、argdoで一気に変換。
これが簡単でよろしい。

で、対象となるファイルの抽出ですが、

例えば、cのソースコードファイルだけを対象にする場合は

:args *.c

フォルダー内も対象とるする場合は

:args **/*.c

対象となるファイルを確認するには

:args

そんでもって変換は

:argdo %s/hoge/fuga/g | update

これで対象ファイルのすべてのhogeをfugaに変換してくれます。

vimを使い始めてかれこれ8年ほどになるが、これのやり方がよく分からんかった。
秀丸を使っていたのはここだけの話。。。

これ以外でいい方法があったら教えてください。

シェアする

  • このエントリーをはてなブックマークに追加
  • Evernoteに保存Evernoteに保存

フォローする

コメント

  1. Matsue より:

    自分もバッファ全部に対する置換のしかたが分からなくて
    困っていました。貴重な情報、ありがとうございます。