Risposte:
FOR %%A IN (list) DO command parameters
list è un elenco di tutti gli elementi, separati da spazi, virgole o punti e virgola.
Il comando può essere qualsiasi comando interno o esterno, file batch o persino - in OS / 2 e NT - un elenco di comandi
parametri contiene i parametri della riga di comando per il comando. In questo esempio, il comando verrà eseguito una volta per ogni elemento nell'elenco, utilizzando i parametri se specificato.
Un tipo speciale di parametro (o anche comando) è %% A, che verrà sostituito da ciascun elemento dall'elenco consecutivamente.
Dai loop FOR
FOR /L %x IN (1,1,100) DO ...
[ parameters ]se vuoi includere più righe nel tuo forloop
Se vuoi fare qualcosa x volte, puoi farlo:
Esempio (x = 200):
FOR /L %%A IN (1,1,200) DO (
ECHO %%A
)
1,1,200 si intende:
Genere:
for /?
e otterrai diverse pagine di testo di aiuto.
Eseguire condizionalmente un comando più volte.
sintassi-PER-Files
FOR %%parameter IN (set) DO command
sintassi-FOR-Files-Rooted at Path
FOR /R [[drive:]path] %%parameter IN (set) DO command
sintassi-FOR-cartelle
FOR /D %%parameter IN (folder_set) DO command
sintassi-FOR-Elenco di numeri
FOR /L %%parameter IN (start,step,end) DO command
sintassi-FOR-File content
FOR /F ["options"] %%parameter IN (filenameset) DO command
o
FOR /F ["options"] %%parameter IN ("Text string to process") DO command
sintassi-FOR-Command Results
FOR /F ["options"] %%parameter IN ('command to process') DO command
esso
%%Guguale a una parte di tali datiSe si utilizza il comando FOR dalla riga di comando anziché in un programma batch, utilizzare solo un segno di percentuale: %Ganziché %%G.
Parametri FOR
Il primo parametro deve essere definito utilizzando un singolo carattere, ad esempio la lettera G.
FOR %%G IN ...
In ogni iterazione di un ciclo FOR, la IN ( ....)clausola viene valutata e %%Gimpostata su un valore diverso
Se questa clausola genera un singolo valore, %% G viene impostato uguale a quel valore e il comando viene eseguito.
Se la clausola risulta in più valori, vengono definiti implicitamente parametri aggiuntivi per contenere ciascuno. Questi sono assegnati automaticamente in ordine alfabetico %%H %%I %%J... (definizione di parametro implicita)
Se il parametro fa riferimento a un file, è possibile utilizzare il riferimento di variabile avanzato per estrarre il nome file / percorso / data / dimensione.
Puoi ovviamente scegliere qualsiasi lettera dell'alfabeto diversa da %%G. ma è una buona scelta perché non è in conflitto con nessuna delle lettere del formato del percorso (a, d, f, n, p, s, t, x) e fornisce la sequenza più lunga di lettere non in conflitto da utilizzare come parametri impliciti .
%a%dando il nome di un file normale? È difficile aiutarti con questo formato. Sentiti libero di porre una nuova domanda dopo aver letto Come chiedere .
So for example in a reference like %%~fG the %%G is the FOR parameter, and the ~f is the Parameter Expansion.capito (qui) [ ss64.com/nt/syntax-args.html ), grazie a te. Saluti amico.
FOR ti fornirà tutte le informazioni di cui avrai mai bisogno sui loop FOR, inclusi esempi sull'uso corretto.
Prova questo codice:
@echo off
color 02
set num1=0
set num2=1
set terminator=5
:loop
set /a num1= %num1% + %num2%
if %num1%==%terminator% goto close
goto open
:close
echo %num1%
pause
exit
:open
echo %num1%
goto loop
num1è il numero da incrementare ed num2è il valore aggiunto a num1e terminatore è il valore dove num1finirà. È possibile indicare un valore diverso per terminator in questa istruzione ( if %num1%==%terminator% goto close). Questa è l'espressione booleana goto close è il processo se il booleano è vero e goto open è il processo se il booleano è falso.
@echo off
echo.
set /p num1=Enter Prelim:
echo.
set /p num2=Enter Midterm:
echo.
set /p num3=Enter Semi:
echo.
set /p num4=Enter Finals:
echo.
set /a ans=%num1%+%num2%+%num3%+%num4%
set /a avg=%ans%/4
ECHO %avg%
if %avg%>=`95` goto true
:true
echo The two numbers you entered were the same.
echo.
pause
exit
Dal FOR /?documento di aiuto:
FOR% variabile IN (imposta) comando DO [comando-parametri]
% variabile Specifica un parametro sostituibile a lettera singola.
(set) Specifica un set di uno o più file. È possibile utilizzare caratteri jolly. comando Specifica il comando da eseguire per ciascun file.
command-parameter
Specifica i parametri o le opzioni per il comando specificato.
Per utilizzare il comando FOR in un programma batch, specificare la variabile %% anziché la
variabile%. I nomi delle variabili fanno distinzione tra maiuscole e minuscole, quindi% i è diverso
da% I.
Se le estensioni di comando sono abilitate, sono supportate le seguenti
forme aggiuntive del comando FOR:
FOR / D% variabile IN (set) comando DO [comando-parametri]
If set contains wildcards, then specifies to match against directory
names instead of file names.
FOR / R [[drive:] percorso]% variabile IN (set) comando DO [comando-parametri]
Walks the directory tree rooted at [drive:]path, executing the FOR
statement in each directory of the tree. If no directory
specification is specified after /R then the current directory is
assumed. If set is just a single period (.) character then it
will just enumerate the directory tree.
FOR / L% variabile IN (inizio, passaggio, fine) comando DO [parametri-comando]
The set is a sequence of numbers from start to end, by step amount.
So (1,1,5) would generate the sequence 1 2 3 4 5 and (5,-1,1) would
generate the sequence (5 4 3 2 1)