4,171
社区成员
发帖
与我相关
我的任务
分享
@echo off
setlocal EnableDelayedExpansion
for /d %%i in (*) do (
set d=%%i
cd "!d!"
for /r %%j in (*.jpg) do (
set /a n+=1
set f=%%j
set di=%%~dj
move /y "!f!" "!di!\!d!\!d!.00!n!.jpg">nul
)
echo !di!\!d!----!n! files moved
set /a n=0
cd..
)
echo move complete...
pause
exit
放到根盘符下运行就行了,不过会扫描根盘符下所有文件夹,所以可以把move改成copy,这样不会破坏文件夹原来的结构。
下面写个改进点的,虽然解决了上面的问题,但是多循环移动了一次,抛砖引玉
@echo off
setlocal EnableDelayedExpansion
for /d %%i in (*) do (
set d=%%i
cd "!d!"
for /r %%j in (*.jpg) do (
set /a n+=1
set f=%%j
set di=%%~dj
move /y "!f!" "!di!\!d!\!d!.00!n!.j">nul
)
for /r %%k in (*.j) do (
set temp=%%k
set tem=!temp:~0,-2!
move /y "!temp!" "!tem!".jpg>nul
)
echo !di!\!d!----!n! files moved
set /a n=0
cd..
)
echo move complete...
pause
exit