Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Rövid leírás
Egy olyan nyelvi utasítást ismertet, amellyel parancsblokkot futtathat egy feltételes teszt eredményei alapján.
Hosszú leírás
A while utasítás (más néven while hurok) egy olyan ciklus létrehozására szolgáló nyelvi szerkezet, amely parancsokat futtat egy parancsblokkban, amíg a feltételes teszt értéke igaz. A while utasítás könnyebben összeállítható, mint a For utasítás, mivel szintaxisa kevésbé bonyolult. Emellett rugalmasabb, mint a Foreach-utasítás, mivel a while utasításban feltételes tesztet ad meg, amely szabályozza a ciklus futásának hányszorosát.
Az alábbiakban a While utasítás szintaxisa látható:
while (<condition>){<statement list>}
while utasítás futtatásakor a PowerShell kiértékeli az utasítás <condition> szakaszát, mielőtt belép a <statement list> szakaszba. Az utasítás feltételrésze igaz vagy hamis lesz. Amíg a feltétel teljesül, a PowerShell újrafuttatja a <statement list> szakaszt. További információért arról, hogyan kerülnek kiértékelésre a logikai értékek, lásd a about_Booleanscímű témakört.
Az utasítás <statement list> szakasza egy vagy több parancsot tartalmaz, amelyek minden alkalommal futnak, amikor a ciklus be van írva vagy ismétlődik. A <statement list> bármilyen érvényes PowerShell-utasítást tartalmazhat, beleértve a break és continue kulcsszavakat.
Az alábbi while utasítás például az 1–3. számot jeleníti meg, ha a $val változó nem jött létre, vagy ha a $val változó létrejött és 0-ra inicializálva lett.
while($val -ne 3)
{
$val++
Write-Host $val
}
Ebben a példában a feltétel ($val nem egyenlő 3-sal) igaz, míg $val értéke 0, 1 és 2. A cikluson keresztül minden alkalommal a $val 1-zel növekszik a ++ nem ismétlődő növekményes operátor használatával. Az utolsó ciklusfutás során, amikor a $val értéke 3-ra van beállítva, a feltétel értékelése hamisra vált, és a ciklus kilép.
Ha kényelmesen meg szeretné írni ezt a parancsot a PowerShell parancssorában, a következő módon adhatja meg:
while($val -ne 3){$val++; Write-Host $val}
Figyelje meg, hogy a pontosvessző választja el az első parancsot, amely 1-et ad hozzá a $val a második parancstól, amely a $val értékét írja a konzolra.