Vimで複数ファイルの文字列置換を行う際のコマンドを紹介します
1. argaddコマンドで置換を行うファイルを指定する
以下のようなコマンドで、置換を行うファイルを指定します。
ファイル内に実際に文字列がない場合でも問題ないです。
置換を行いたいディレクトリの配下にあるファイルを一気に指定しましょう。
例SQLファイルの置換を行う
:argadd path/to/files/**/*.sql
argsコマンドで指定したファイルの一覧を見ることができます。
:args
2. argdoコマンドで指定したファイルに置換を実行する
:argdo %s/置換対象の文字列/置換後の文字列/ge | update
ここで僕は置換時に、gではなくgeを指定することにしています。
geにすることで、argaddで指定したファイル内に置換対象の文字列がなかったとしても、エラーになっていちいち止まらずに全てのファイルに対して置換を実行してくれます。
保存はしないで一個ずつ正しく置換できているか確かめたいときは、最後のupdateを外してください。updateを行わないことで置換後に保存がされないので、置換したファイルを一つずつチェックして保存を実行していくことができます。
保存をしない場合
:argdo %s/置換対象の文字列/置換後の文字列/ge
この記事について
この記事は
の参加記事です。