about_While

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

Az 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 mindaddig, amíg a feltételes teszt értéke igaz. Az 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 feltételes tesztet ad meg az utasításban, while amely szabályozza, hogy hányszor fut a hurok.

Az alábbiakban a While utasítás szintaxisa látható:

while (<condition>){<statement list>}

Utasítás futtatásakor while a PowerShell kiértékeli az <condition> utasítás 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 szakaszt <statement list> . A logikai értékek kiértékelésének módjáról további információt a about_Booleans talál.

Az <statement list> utasítás szakasza egy vagy több parancsot tartalmaz, amelyek minden alkalommal futnak, amikor a ciklus be van írva vagy ismétlődik. Ezek <statement list> bármilyen érvényes PowerShell-utasítást tartalmazhatnak, beleértve a kulcsszavakat és continue a break kulcsszavakat is.

Az alábbi while utasítás például az 1–3. számot jeleníti meg, ha a $val változó nem lett létrehozva, 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ő a 3-sal) igaz, míg $val 0, 1 és 2. A cikluson $val keresztül minden alkalommal 1-zel növekszik a rendszer a ++ nem ismétlődő növekményes operátor használatával. Az utolsó alkalommal, amikor a ciklus $val 3-ra van állítva, a feltételkimutatás értéke hamis, é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ő elválasztja az első parancsot, amely 1-et $val ad hozzá a második parancstól, amely a $val konzol értékét írja.

Lásd még