在批处理文件中怎么使用嵌套for命令?

来源:百度知道 编辑:UC知道 时间:2024/07/05 07:36:43

高级的办法(不用重复执行命令):
比如当前文件夹内所有的jpg文件依次按照1.txt里每行的内容重命名

setlocal enabledelayedexpansion

REM 保存dir的结果到变量a.1,a.2,...,总个数存到变量a.num
set "num=0"
for /f "delims=" %%i in ('dir /o:n /a:-d /b "*.jpg"') do (
set /a "num=!num!+1"
set "a.!num!=%%i"
)
set "a.num=!num!"
REM 保存type的结果
set "num=0"
for /f "delims=" %%i in ('type 1.txt') do (
set /a "num=!num!+1"
set "b.!num!=%%i"
)
set "b.num=!num!"
REM 进行操作
for /l %%i in (1,1,!a.num!) do (
if %%i leq !b.num! ren "!a.%%i!" "!b.%%i!"
)
REM 清除临时变量
for /l %%i in (1,1,!a.num!) do (
set "a.%%i="
)
for /l %%i in (1,1,!b.num!) do (
set "b.%%i="
)
pause

for %%a in (c d e f g) do (
for /f %%b in ('dir /ad /