Batch file 批处理文件循环中缺少操作数
我很确定这会起作用,但我看不出是什么问题导致缺少操作数。循环似乎工作正常,但由于某些原因_num变量没有按应有的方式递增。 似乎set/a在这里没有按预期工作Batch file 批处理文件循环中缺少操作数,batch-file,while-loop,operand,Batch File,While Loop,Operand,我很确定这会起作用,但我看不出是什么问题导致缺少操作数。循环似乎工作正常,但由于某些原因_num变量没有按应有的方式递增。 似乎set/a在这里没有按预期工作 @echo off cls cd \ cd /d D:\ set /a _num1=1 set /a _num=1 :LOOP if exist D:\%_num%.zip ( set /a "%_num%+=%_num1%" goto LOOP ) echo "%_num%.zip" pause exit @ech
@echo off
cls
cd \
cd /d D:\
set /a _num1=1
set /a _num=1
:LOOP
if exist D:\%_num%.zip (
set /a "%_num%+=%_num1%"
goto LOOP
)
echo "%_num%.zip"
pause
exit
@echo on
+1,使OP的代码正常工作所需的最小更改是
set/a“\u num+=%\u num1%”
。我可能会使用set/a“\u num+=\u num1”
endro,这正是我试图实现的,并减少了我的代码量。我不知道有多少次我必须在CMD中使用变量重新学习这一课才能坚持下去。德本汉姆,你说得对,不过,我喜欢恩多的想法。
if exist "D:\%_num%.zip" (
set /a _num+=1
goto LOOP
)