Informazioni sul tempo
DESCRIZIONE BREVE
Descrive un'istruzione del linguaggio che è possibile usare per eseguire un blocco di comandi in base ai risultati di un test condizionale.
DESCRIZIONE LUNGA
L'istruzione While (nota anche come ciclo While) è un costrutto del linguaggio per la creazione di un ciclo che esegue i comandi in un blocco di comandi finché un test condizionale restituisce true. L'istruzione While è più semplice da costruire rispetto a un'istruzione For perché la sintassi è meno complessa. Inoltre, è più flessibile dell'istruzione Foreach perché si specifica un test condizionale nell'istruzione While per controllare il numero di esecuzioni del ciclo.
Di seguito viene illustrata la sintassi dell'istruzione While:
while (<condition>){<statement list>}
Quando si esegue un'istruzione While, PowerShell valuta la <condition>
sezione dell'istruzione prima di immettere la <statement list>
sezione. La parte della condizione dell'istruzione viene risolta su true o false. Purché la condizione rimanga true, PowerShell esegue nuovamente la <statement list>
sezione.
La <statement list>
sezione dell'istruzione contiene uno o più comandi eseguiti ogni volta che il ciclo viene immesso o ripetuto.
Ad esempio, l'istruzione While seguente visualizza i numeri da 1 a 3 se la variabile $val non è stata creata o se la variabile $val è stata creata e inizializzata su 0.
while($val -ne 3)
{
$val++
Write-Host $val
}
In questo esempio la condizione ($val non è uguale a 3) è true mentre $val = 0, 1, 2. Ogni volta che si attraversa il ciclo, $val viene incrementato da 1 usando l'operatore di incremento unario ++ ($val++). L'ultima volta che passa il ciclo, $val = 3. Quando $val uguale a 3, l'istruzione condizione restituisce false e il ciclo viene chiuso.
Per scrivere in modo pratico questo comando al prompt dei comandi di PowerShell, è possibile immetterlo nel modo seguente:
while($val -ne 3){$val++; Write-Host $val}
Si noti che il punto e virgola separa il primo comando che aggiunge 1 a $val dal secondo comando che scrive il valore di $val nella console.