VimでGrepと一括置換
VimでGrepと一括置換するコマンドをすぐ忘れる。
Grep
:vimgrep /hoge/j **/*.txt | cw
jオプションは最初のマッチを自動で開かない- cwは検索結果をQuickfixに表示
- Quickfixウィンドウは
:cnでマッチした次の行へ、:cpで前の行に戻る
一括置換
:args *.txt
:args
:argdo %s/hoge/fuga/g | update
- 対象ファイルを登録、サブディレクトリも対象にする場合は
**/*.txt - 1行目で登録されたファイルを表示して確認(やらなくてもOK)
- 単体ファイル対象の置換と同じ感じで
argdoする、updateは変更のあったファイルのみ保存するコマンド