I have some file such as AAA_a001.jpg
, BBB_a002.jpg
, CCC_a003.jpg
in Windows 7
and I'm trying to use batch to rename these file to a001_AAA.jpg
, a002_BBB.jpg
, a003_CCC.jpg
.
Just to swap the content between _
.
I have been searching for a while, but still don't know how to do this. Can anyone help? Thanks.
@echo off
pushd "pathToYourFolder" || exit /b
for /f "eol=: delims=" %%F in ('dir /b /a-d *_*.jpg') do (
for /f "tokens=1* eol=_ delims=_" %%A in ("%%~nF") do ren "%%F" "%%~nB_%%A%%~xF"
)
popd
Note: The name is split at the first occurrence of _
. If a file is named "part1_part2_part3.jpg", then it will be renamed to "part2_part3_part1.jpg"