大分前にファイル名を一括で変えるバッチを組みましたが、


今回のは直ぐに使えるものをメモしておきます。


前回同様、バッチと同じ階層にある指定したファイル名を一括で変更します。
末尾の拡張子前に文字列を入れるPGになっています。


下記のPGをバッチファイルに保存して、「拡張子」の部分に一括変更したいファイルの拡張子を指定して、

「○○」の部分に変更したい名前を指定します。




@echo off


echo ファイル名変更スタート
pause

setlocal ENABLEDELAYEDEXPANSION

for %%i in (*.拡張子) do (

echo %%i

set m0=%%i


set m1=!m0:~0,6!

ren %%i !m1!○○.拡張子

 
)

endlocal

echo 完了
exit






今回は

setlocal ENABLEDELAYEDEXPANSION

の部分、遅延環境変数を使っています。



あとは、

set m1=!m0:~0,6!

の部分で左から6文字を変数に入れています。


ここの6を変えると取得する文字列が変わります。







ファイル名の桁数取って、もっと汎用性があるものにしようと思ってますが、取り敢えず今使ってるものをメモメモ。



どうぞご参考あれ〜