it-swarm-id.com

Untuk Loop menghitung dari 1 ke n dalam skrip Windows Bat

Saya perlu menjalankan perintah windows n kali dalam file skrip kelelawar. Saya tahu bagaimana melakukan ini dalam berbagai bahasa pemrograman tetapi tidak bisa mengaturnya dengan benar di baris perintah windows :

Saya akan mengharapkan sesuatu seperti itu

for(int i = 0; i < 100; i++) {
   // do something
}

atau bahkan ini (meskipun tidak sepenuhnya serius)

1.upto(100, {
   // do something
}) 

Terima kasih!

--- ([~ # ~] sunting [~ # ~]

Saya dapat menulis sebuah program di Java, Perl, c atau apa pun yang akan menghasilkan skrip kelelawar yang terlihat seperti ini

for %%N in (1 2 3 4 5 6 7 8 9 10 11 12) do echo %%N

dan seterusnya. Atau bahkan "lebih baik":

echo 1
echo 2
echo 3
echo 4
echo 5
echo 6
echo 7
echo 8
echo 9
echo 10
echo 11
echo 12

dan kemudian jalankan ... Tapi masalahnya adalah saya perlu cara ringkas untuk menentukan rentang angka untuk diulangi melalui dalam skrip.

Terima kasih!

25
raoulsson

Anda dapat melakukannya seperti ini:

ECHO Start of Loop

FOR /L %i IN (1,1,5) DO (
  ECHO %i
)

1,1,5 diterjemahkan sebagai:

(start,step,end)

Perhatikan juga, jika Anda menanamkan ini dalam file batch, Anda harus menggunakan tanda persen ganda (%%) untuk mengawali variabel Anda, jika tidak, penerjemah perintah akan mencoba mengevaluasi variabel% i sebelum menjalankan loop.

46
Goyuix

Sintaksnya adalah

FOR %%A IN (1 2 3) DO ECHO %%A

Artikel bagus di sini dan XP spesifik di sini

9
Andy

Langsung dari baris perintah:

for /L %n in (1,1,100) do @echo %n

Menggunakan file batch:

@echo off
for /L %%n in (1,1,100) do echo %%n

Menampilkan:

1
2
3
...
100
7
fmoraesjr