命令行 – 通过命令行的范围内的DOS FOR循环

我想从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

http://ss64.com/nt/for_l.html

转载注明原文:命令行 – 通过命令行的范围内的DOS FOR循环 - 代码日志