Hoe verlaat ik een foreach-lus in PowerShell


Beste antwoord

Hoe verlaat ik een foreach-lus in PowerShell?

Tenzij je een oneindige passeert aantal objecten in de lus, de voor elke lus zal zichzelf een keer beëindigen elk van de objecten wordt verwerkt.

voor elk ( $ obj in $ array)

U kunt het voortijdig beëindigen met voorwaardelijke logica in het lusproces. Als een object bijvoorbeeld overeenkomt met een voorwaarde, verbreek de lus.

[bool[]]$array

foreach($obj in $array)

{

if ($obj -eq $false)

{

break

}

else

{

#do something

}

}

Andere lustypes, zoals for loops en do-while / do-till-lussen, zijn veel vatbaarder voor oneindig draaien vanwege slechte initparameters.

Powershell-zelfstudie – Een eindeloze lus creëren, een overloop van gespreksdiepte vermijden – Vexasoft

Antwoord

Je gebruikt ` break “, bijv .:

foreach ($val in $vals) {

if ($val -eq 10) {

break

}

}

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *