Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Kort beskrivning
Beskriver en språksats som du kan använda för att köra ett kommandoblock baserat på resultatet av ett villkorstest.
Lång beskrivning
Instruktionen while (kallas även för en while-loop) är en språkkonstruktion för att skapa en loop som kör kommandon i ett kommandoblock så länge ett villkorstest utvärderas till sant. Instruktionen while är enklare att konstruera än en For-instruktion eftersom dess syntax är mindre komplicerad. Dessutom är den mer flexibel än Foreach-instruktionen eftersom du anger ett villkorstest i while-instruktionen för att styra hur många gånger loopen körs.
Följande visar syntaxen för While-instruktionen:
while (<condition>){<statement list>}
När du kör en while-instruktion utvärderar PowerShell sektionen <condition> i instruktionen innan du går in i sektionen <statement list>. Villkorsdelen av uttalandet utvärderas till antingen sant eller falsk. Så länge villkoret förblir sant kör PowerShell avsnittet <statement list> igen. Mer information om hur booleska värden utvärderas finns i about_Booleans.
Avsnittet <statement list> i satsen innehåller ett eller flera kommandon som körs varje gång loopen träds in i eller upprepas.
<statement list> kan innehålla alla giltiga PowerShell-instruktioner, inklusive nyckelorden break och continue.
Följande while-instruktion visar till exempel talen 1 till och med 3 om variabeln $val inte har skapats eller om $val variabeln har skapats och initierats till 0.
while($val -ne 3)
{
$val++
Write-Host $val
}
I det här exemplet är villkoret ($val inte är lika med 3) sant medan $val är lika med 0, 1 och 2. Varje gång genom loopen ökas $val med 1 med operatorn ++ unary increment. Den sista gången som loopen körs är $val inställd på 3, villkorssatsen utvärderas till falskt, och loopen avslutas.
Om du vill skriva det här kommandot i PowerShell-kommandotolken kan du ange det på följande sätt:
while($val -ne 3){$val++; Write-Host $val}
Observera att semikolonet separerar det första kommandot som lägger till 1 i $val från det andra kommandot som skriver värdet för $val till konsolen.