バッチファイルでフォルダ内のファイル拡張子を一括変更してみました。
今回はフォルダ内にあるすべてのファイルをcsvファイルからtxtファイルに変換してみました。
フォルダ内の拡張子を一括変更する
以下のコマンドで実行可能です。
chcp 65001
@echo off
setlocal enabledelayedexpansion
set newext=".txt"
for %%a in (C:\hogehoge\hogehoge\*) do (
ren "%%a" "%%~na!newext!"
set /a count+=1
)
pause
実行結果
実行前はすべて csv でしたが、
実行後はすべて txt に変わっていることが確認できます。
特定の拡張子だけ変更したい場合
フォルダ内のすべてのファイルではなく、特定の拡張子のみを変更したい場合には以下のコマンドで実行可能です。
chcp 65001
@echo off
setlocal enabledelayedexpansion
set path="C:\hogehoge\hogehoge"
set oldext=".log"
set newext=".txt"
for %%a in ("%path%\*%oldext%") do (
set "filename=%%~na"
ren "%%a" "!filename!%newext%"
)
pause
今回は .log の拡張子ファイルのみを .txt の拡張子に変更します。
実行結果
実行前には .log のファイルが4つありましたが、
実行後は4つすべてが .txt に変わり、その他の拡張子のファイルは変更していないことが確認できます。
コメント