フォルダ内のテキスト全件に同じ置換をかけたい場面は多い。
- ソース内の関数名を一括で変更
- ドメインやパスを一括で差し替え
- 固定文言の表記揺れをまとめて修正
- HTMLの属性やクラス名を一括置換
秀丸エディタなら、標準機能の 「grepして置換」 でまとめて処理できる。
ただしこれは「ファイルを上書き保存」するので、バックアップ付きでやるのが前提。
重要:いきなり置換しない(事故防止の基本手順)
一括置換は“強い”分、ミスった時の被害も大きい。
おすすめの流れはこれ。
- まずgrep(検索だけ) でヒット箇所を確認
- 問題なさそうなら grepして置換 を実行
- バックアップ と 保存前確認 をONにしてから実行
1) 事前準備(30秒)
- 置換対象のフォルダを決める
- 対象ファイルを絞る(例:
*.txt;*.md;*.html;*.css;*.jsなど) - 可能なら、フォルダを丸ごとコピーして“手元バックアップ”を作っておく(保険)
2) まずは「grep(検索だけ)」で当たりを付ける
メニューから 検索 → grep を開く(名称は環境で多少前後する)。
設定するのは主にこれ:
- 検索文字列:置換したい元の文字
- 検索対象:フォルダ(必要ならサブフォルダも含める)
- ファイル:対象の拡張子(例:
*.txt;*.md;*.html) - (必要なら)大文字小文字、正規表現、単語単位など
ここで「どのファイルに、どれくらいヒットするか」を見ておく。
この確認を飛ばすと、だいたい痛い目を見る。
3) 本番:「grepして置換」でフォルダ内を一括置換(バックアップ付き)
3-1. ダイアログを開く
メニューから 検索 → grepして置換 を開く。
3-2. 入力する内容(基本)
- 検索文字列:置換前
- 置換文字列:置換後
- 検索対象:フォルダ
- ファイル:対象拡張子(絞る)
- サブフォルダ:必要ならON
- 正規表現:必要な時だけON(慣れてないなら慎重に)
3-3. 絶対にONにしたい安全装備(ここが本題)
一括置換は上書き保存する。だから、最低でも次をONにする。
- バックアップ:置換前のファイルを退避してから上書きする
- 保存の前に確認:上書きする前に確認を挟む(事故が減る)
一括置換は「やり直し(Undo)」で戻せないケースがある。バックアップは必須。
4) バックアップの置き場所(おすすめ)
バックアップの作成場所や拡張子は、設定で変えられる。
運用のおすすめは次のどれか。
A. 同じフォルダに .bak を作る(手軽)
foo.txtを書き換える前にfoo.txt.bakを作る、みたいな形- 後で戻すのが簡単
B. バックアップ専用フォルダへ集約(散らからない)
- 例:
C:\work\__backup\...に退避 - プロジェクトが大きい時に便利
どちらでもいいが、「戻せる状態」になってるのが大事。
5) 復元(戻したい時)
バックアップが残っていれば、戻し方は単純。
- 置換後ファイルを捨てる(または退避)
- バックアップ(
.bak等)を元の名前に戻す
例:
foo.txtを戻したい
→foo.txtを退避
→foo.txt.bakをfoo.txtにリネーム
6) よくある事故と回避
対象ファイルを広げすぎる
*.*でやると事故率が跳ねる- 拡張子で絞る(
*.md;*.txt;*.htmlみたいに)
正規表現の “.” や “*” で焼け野原
- 正規表現は強力だが、ミスると被害がデカい
- 不安なら、まずgrep検索で“ヒット範囲”を目視確認
文字コード混在
- Shift-JIS/UTF-8が混ざってると、意図せず崩れることがある
- 可能ならプロジェクトで文字コードを揃える
7) もっと安全にやるコツ(おすすめ運用)
- まず小さいフォルダ(サンプル)でテスト
- 「保存の前に確認」をONにして、最初の数件は内容を見てからOKする
- バックアップが実際に作成されているか、最初の1回は必ず確認
まとめ
秀丸の 「grepして置換」 は、フォルダ横断で同じ置換を一発でかけられる強力機能。
ただし上書き保存なので、バックアップ と 保存前確認 をONにして、まずgrep検索で当たりを付けてから実行する。
これだけ守れば、複数ファイルの一括置換はかなり安全に回せる。
