25

我想从命令窗口多次执行操作。常识告诉我 FOR 循环应该能够处理这个问题。果然,如果我想执行,比如说,myProg.exe我可以打开一个命令窗口并使用:

C:\> FOR %i in (1 2 3) DO myProg.exe

简单的。

但是如果我想执行myProg.exe1000 次呢?我想在 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

但是,难道没有一种简单的方法可以从命令行执行此操作吗?

4

2 回答 2

43

您可以在语句中使用 /l 标记,使其在一组数字中循环。

例如。

C:\> FOR /l %i in (1,1,1000) DO myProg.exe

这表示循环遍历范围,从 1 开始,一次步进 1,直到 1000

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

于 2013-03-22T18:45:16.947 回答
6

for /l %%i in (1,1,100) do echo %%i

在我工作之前添加另一个 % 符号

于 2014-01-12T07:55:22.423 回答