@echo off
if "%~2" equ "" goto shuomin
if "%~3" equ "" (set px=n) else (set px=%~3)
setlocal enabledelayedexpansion
for /f %%C in ('dir "%~1" /d /a-d^|find "个文件"') do set wenjianshu=%%C
set wishu=1
:loop
if !wenjianshu! gtr 9 (
set /a wenjianshu/=10
set /a wishu+=1
goto loop
)
set i=0
for /f "tokens=* delims=" %%N in ('dir "%~1" /o%px% /b /a-d') do (
set /a i+=1
set si=0000000!i!
set si=!si:~-%wishu%!
if "%~4" equ "" (
ren "%%N" "%~2_!si!%%~xN"
) else (
ren "%%N" "%~2_!si!.%~4"
)
)
echo 完成,重命名 !i! 个文件。
goto :eof
:shuomin
echo.
echo 顺序重命名文件
echo.
echo %~n0 ^<源文件^> ^<新名称前缀^>
echo.
echo 排序规则为 dir 命令的排序规则 n s e d g
echo.
echo 例: %~n0 * mv n wmv