25

コマンドウィンドウから複数回操作したい。常識では、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.exe3回と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

(1,1,100)の/ l%%iの場合は%%iをエコーし​​ます

私が働く前に別の%記号を追加します

于 2014-01-12T07:55:22.423 に答える