当我编写批处理程序时,我倾向于创建一个goto循环来设置和显示事物。
示例:
@echo off & setlocal enabledelayedexpansion
:loop
if !num! GTR !max!
set /a "num=num+1"
echo display!num! = !display%num%!
goto :loop
我有一种感觉,我可以用for循环替换它,但我没有成功创建一个可以取代上面的循环。有谁知道吗?
答案 0 :(得分:2)
您可以使用for /L
循环。
for /L %%A in (!num!,1,!max!) do echo display%%A = !display%%A!
!num!
是您的起始号码,!max!
是您的结束号码,1
表示逐个号码。
答案 1 :(得分:1)
@echo off
setlocal enableextensions enabledelayedexpansion
rem Set limits
set /a "num=1", "max=10"
rem Prepare a set of variables to test
for /l %%a in (%num% 1 %max%) do set "display%%a=!random!"
rem Show the variables contents
for /l %%a in (%num% 1 %max%) do echo display%%a=!display%%a!