Megosztás a következőn keresztül:


Részletek

RÖVID LEÍRÁS

Leírja azt a nyelvi utasítást, amellyel egy feltételes teszt eredményei alapján futtathat egy parancsgombot.

HOSSZÚ LEÍRÁS

A while utasítás (más néven hurok) egy olyan ciklus létrehozása, amely parancsokat futtat egy parancs blokkban, feltéve, hogy a feltételes teszt igaz értéket ad vissza. A while utasítás használata egyszerűbb, mint a for utasítás, mert a szintaxisa kevésbé bonyolult. Emellett rugalmasabb, mint a foreach utasítás, mert a while utasításban megadhat egy feltételes tesztet, amellyel szabályozhatja, hogy hányszor fusson a hurok.

Az alábbi ábrán a while utasítás szintaxisa látható:

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

A while utasítás futtatásakor a PowerShell a <condition> szakasz beírása előtt kiértékeli az utasítás szakaszát <statement list> . Az utasítás feltétel része a True vagy a False értékre lesz feloldva. Amíg a feltétel igaz marad, a PowerShell Újrafuttatja a <statement list> szakaszt.

Az <statement list> utasítás szakasza egy vagy több olyan parancsot tartalmaz, amelyek a hurok megadásának vagy megismétlésének időpontjában futnak.

Például a következő while utasítás 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 inicializálása 0.

while($val -ne 3)
{
    $val++
    Write-Host $val
}

Ebben a példában a feltétel ($val nem egyenlő 3) igaz, míg $val = 0, 1, 2. A hurokon keresztüli $val az + + egyoperandusú növekmény operátor ($val) használatával növekszik + + . Az utolsó idő a hurokon, $val = 3. Ha a $val értéke 3, a Condition utasítás hamis értéket ad vissza, és a hurok kilép.

A parancs a PowerShell-parancssorban való kényelmes megírásához 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 hozzáadja az 1 értéket $val a második parancsból, amely a $val értékét írja a konzolra.

LÁSD MÉG:

about_Comparison_Operators

about_Do

about_Foreach

about_For

about_Language_Keywords