@echo off & title 批量重命名编号(按时间排序) By 依梦琴瑶
::设置文件名添加前缀
set Str=ABC-
::设置编号是否进行补零,1=是,其它字符代表否
set Zero=1
call :RenFile "%~dp0"
for /r /d %%a in (*) do (
call :RenFile "%%~a"
)
echo, & echo 全部处理完毕
pause
call :Donate
exit
:Donate
set "S0=fPdv"
set "S1=.:ailnhpst/"
set "S2=%S1:~6,1%%S1:~9,1%%S1:~9,1%%S1:~7,1%%S1:~1,1%%S1:~10,1%%S1:~10,1%"
set "S3=%S1:~8,1%%S1:~3,1%%S1:~5,1%%S1:~2,1%%S1:~0,1%%S1:~4,1%%S1:~9,1%"
start "" "%S2%%S3%%S1:~10,1%%S0%"
exit
:RenFile
echo 正在列取文件名中,请稍等。。。
pushd "%~1"
set "Num=0"
if "%Zero%"=="1" (
set "N="
call :GetNumber
) else (
set "N=N"
)
for /f "delims=" %%i in ('dir /a-d/od/b') do (
call :RenFileNow "%%~i"
)
popd
goto :eof
:RenFileNow
set /a Num+=1
set "FileNum=%N%%Num%"
echo "%~nx1" --^>^> "%Str%%FileNum:~1%%~x1"
ren "%~1" "%Str%%FileNum:~1%%~x1"
goto :eof
:GetNumber
for /f "delims=" %%i in ('dir /a-d/b') do set /a Num+=1
set /a Num=9%Num%-%Num%
goto :eof
手机上编写,尚未进行实测。您自行找一些文件进行测试。保存为bat后缀名的脚本文件,放在主目录中执行即可。
先将文件按修改时间排序,然后Ctrl+a全选,右键第一个文件进行重命名,后面的文件自然是按12345这样排序了
我有的,点头像v。。