我想从DOS窗口执行多次操作。常识告诉我,DOS FOR循环应该能够处理这个。果然,如果我想执行,说myProg.exe,我可以打开一个命令窗口并使用:
C:\> FOR %i in (1 2 3) DO myProg.exe
简单。
但是如果要执行myProg.exe 1000次怎么办?我想在FOR循环中指定一个范围,但是我看到如何执行此操作有困难。
直觉上,我似乎应该能够做一些像下面这样的事情:
C:\> FOR %i in (1 to 1000) DO myProg.exe C:\> FOR %i in (1-1000) DO myProg.exe
但是,当然这不行。 FOR循环将该列表分别解释为3个令牌和1个令牌,因此myProg.exe分别只执行3次和1次。
编写某种批处理文件(.bat)可能很简单:
SET COUNT=0 :MyLoop IF "%COUNT%" == "1000" GOTO EndLoop myProg.exe SET /A COUNT+=1 GOTO MyLoop :EndLoop
但是,从命令行来看,这不是一个简单的方法吗?
您可以在语句中使用/ l标签,使其循环遍历一组数字。
例如。
C:\> FOR /l %i in (1,1,1000) DO myProg.exe
这表示循环通过范围,从1开始,一次步进1,直到1000