LoginSignup
9
8

More than 1 year has passed since last update.

Tips: Vimで複数ファイルの文字列置換を一気に行う

Posted at

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

この記事について

この記事は

の参加記事です。

9
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
8