about_While
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 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 det mer flexibelt än Foreach-instruktionen eftersom du anger ett villkorstest i -instruktionen while 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 <condition> PowerShell avsnittet i -instruktionen innan du anger avsnittet <statement list> . Villkorsdelen av -instruktionen matchas till antingen sant eller falskt. Så länge villkoret förblir sant kör PowerShell avsnittet igen <statement list> . Mer information om hur booleska värden utvärderas finns i about_Booleans.
Avsnittet <statement list> i -instruktionen innehåller ett eller flera kommandon som körs varje gång loopen anges eller upprepas. <statement list> Kan innehålla alla giltiga PowerShell-instruktioner, inklusive nyckelorden break ochcontinue.
Följande instruktion visar till exempel while talen 1 till och med 3 om variabeln $val inte har skapats eller om variabeln $val har skapats och initierats till 0.
while($val -ne 3)
{
$val++
Write-Host $val
}
I det här exemplet är villkoret ($val inte lika med 3) sant medan $val är lika med 0, 1 och 2. Varje gång genom loopen $val ökas med 1 med hjälp av den ++ oförseliga inkrementsoperatorn. Sista gången genom loopen $val är inställd på 3 utvärderas villkorssatsen till false och loopen avslutas.
Du kan enkelt skriva det här kommandot i PowerShell-kommandotolken genom att 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 $val 1 i från det andra kommandot som skriver värdet $val för till konsolen.