您可以使用GOTO
带有递增计数器的循环,但FOR /L
循环效率更高。
for /l %%N in (1 1 30) do someCommand
通过键入HELP FOR
或FOR /?
从命令行研究可用的文档。
如果要重复整个代码块,请将代码块括在括号中。您可以使用FOR
%%N
变量代替Sleep
变量。
@echo off
cls
for /l %%N in (1 1 30) do (
echo This is a loop
xx.exe yyyyy.dll /p:InputDataSource=Table:table.xml
echo DisplayingSleepvalue
echo %%N
)
您的示例不需要它,但如果您想在循环中操作环境变量,则必须使用延迟扩展。正常扩展%sleep%
仅在解析整个循环时扩展一次,而您需要在!sleep!
每次循环迭代的执行时扩展该值。延迟扩展必须先启用,然后才能使用。
@echo off
setlocal enableDelayedExpansion
cls
set sleep=0
for /l %%N in (1 1 30) do (
echo This is a loop
xx.exe yyyyy.dll /p:InputDataSource=Table:table.xml
set /a sleep+=1
echo DisplayingSleepvalue
echo !sleep!
)