🖥️ Batch (CMD)
Bulk Rename by Extension
Renames every file of a given extension in a folder using a sequential prefix and number, useful for sorting photos or exports.
BulkRename.bat
@echo off
:: ============================================================
:: BulkRename.bat
::
:: Renames all files in a folder matching a given extension by
:: adding a sequential number and/or replacing a text pattern.
::
:: Usage:
:: BulkRename.bat "C:\Photos" jpg "Vacation2026_"
::
:: Result:
:: C:\Photos\Vacation2026_001.jpg
:: C:\Photos\Vacation2026_002.jpg
:: ...
:: ============================================================
setlocal EnableDelayedExpansion
if "%~3"=="" (
echo Usage: %~nx0 "FolderPath" extension "NewNamePrefix"
echo Example: %~nx0 "C:\Photos" jpg "Vacation2026_"
exit /b 1
)
set "FOLDER=%~1"
set "EXT=%~2"
set "PREFIX=%~3"
if not exist "%FOLDER%" (
echo Folder not found: %FOLDER%
exit /b 1
)
set /a COUNT=0
pushd "%FOLDER%"
for %%F in (*.%EXT%) do (
set /a COUNT+=1
set "NUM=00!COUNT!"
set "NUM=!NUM:~-3!"
echo Renaming "%%F" -^> "%PREFIX%!NUM!.%EXT%"
ren "%%F" "%PREFIX%!NUM!.%EXT%"
)
popd
echo.
echo Renamed %COUNT% file(s).
endlocal