Sistema operativo Windows fornisce MS-DOS da facilmente giorni della sua creazione. MS-DOS è una piattaforma generalmente utilizzata come riga di comando. MD-DOS hanno un sacco di caratteristiche che fornisce funzionalità di programmazione. In questo tutorial vedremofor
loop che fornisce funzionalità di loop ed enumerazione per la riga di comando.
L’aiuto su for loop può essere ottenuto come di seguito.,
$ for /?
Syntax
For loop have the following syntax.
FOR %variable IN (set) DO command
-
FOR
specifies the loop -
%variable
used to store value for each step in the loop -
IN (set)
used to provide list for looping., Questo può essere un elenco di file, elenco utenti o qualsiasi altra cosa -
DO command
viene utilizzato per eseguire comandi per ogni passo
Contare i numeri e stampare
Inizieremo con un semplice esempio. Ci limiteremo a stampare un elenco che contiene i numeri da 1 a 5 . In ogni passaggio un elemento dell’elenco è impostato su variabile e la variabile verrà stampata con il comandoecho
.,
$ for %i IN (1,2,3,4,5) DO echo %i
Come possiamo vedere ogni passaggio del ciclo viene eseguito come un comando separato .
Eseguire il comando per ogni file
Esempio precedente non hanno alcun beneficio per le operazioni quotidiane. Gli amministratori di sistema generalmente vogliono eseguire un comando sui più account di file con un modo semplice. Stamperemo i file che si trovano nella directory corrente con il comando echo
.,
$ for /F %i in ("dir /b *") do echo %i
Esegui Comando Per Ogni Utente
Si può anche eseguire comandi per ogni utente. Forniremo l’elenco degli utenti perché non esiste un modo pratico per generare l’elenco degli utenti in ms-dos in modo conveniente. Vi forniremo lista utente ismail, jack, administrator
. Elencheremo le informazioni su questi utenti con il comandonet user
.,
$ for %i in (ismail,jack,administrator) do net user %i
Otterremo tutte le informazioni degli utenti facilmente senza digitare uno per uno.
Esegui comando per ogni computer
Eseguiremo il comando ping per ogni indirizzo IP o nome host fornito dall’elenco. La nostra lista IP di esempio è 192.168.122.1 , 192.168.122.6
.,
$ for %i in (192.168.122.1 , 192.168.122.66) do ping %i
Lettura della Lista Da File
Negli esempi precedenti abbiamo due metodo per generare la lista. Un metodo esegue command e fornisce il risultato del comando come elenco a for loop. Altro metodo è scrivere gli elementi della lista uno per uno. C’è un altro modo per fornire elenco. Elenchi elementi possono essere letti da file.
In questo esempio leggeremo gli elementi della lista dal file denominato hosts.txt
.
host.,txt
192.168.122.1192.168.122.66google.com
Forniremo il/F
nel ciclo for per leggere dal file.
$ for /F %i in (hosts.txt) do ping %i
Specificare il numero di colonna in un file
Non vi è esempio di utilizzo avanzato con file. Il file fornito può avere più di una colonna delimitata con delimitatori diversi. Le colonne specificate possono fornire il ciclo come elemento di elenco.
In questo esempio abbiamo un file che contiene nomi utente e informazioni correlate., This information is delimited with ,
. We will provide user names by specifying related column.
users.txt
ismail,baydanjohn,backadministrator,windows
$ for /F "tokens=1 delims=," %i in (users.txt) do net user %i