dos prompt + Sublime text > 複数ファイルの名前変更


複数のファイルの名前を同じ規則で変更したい。

動作確認
Sublime Textが入った環境

例として
- file3141DDD.csv

- file2718DDD.csv
のようにファイル名の「3141」を「2718」に変換する。


まずはDOSプロンプトで以下を実行する。

del tmp.txt
for /R %x in (*3141*) do echo %x %x >> tmp.txt

tmp.txtをSublime Textで開く。

tmp.txt(編集前)
D:\WORK\001\002\003\file3141DDDD.csv D:\WORK\001\002\003\file3141DDDD.csv 
D:\WORK\001\002\003\file3141EE.csv D:\WORK\001\002\003\file3141EE.csv 
...
  1. 置換ですべての3141を2718に変換する
  2. フォルダ部分(D:\WORK\001\002\003)をマルチ選択してすべて消す

この時点で以下となる。

tmp.txt(編集後1)
file2718DDDD.csv file2718DDDD.csv 
file2718EE.csv file2718EE.csv 
...
  1. WinならShift+右ドラッグで左側の3141を矩形選択したうえで2718(元の数値)に書き戻す。
  2. 同じく矩形選択した上で、左側に ren を付け足す
tmp.txt(編集後1)
ren file2718DDDD.csv file3141DDDD.csv 
ren file2718EE.csv file3141EE.csv 
...

ファイルをtmp.batとしてDOSプロンプトで実行すればファイル名変更が終了する。