Beste svaret
Hvordan avslutter jeg en foreach-loop i PowerShell?
Med mindre du passerer en uendelig antall objekter i sløyfen, for hver sløyfe avslutter seg selv en gang hver av objekter behandles.
for hver ( $ obj i $ array)
Du kan avslutte det for tidlig med betinget logikk i loop-prosessen. For eksempel hvis et objekt samsvarer med en betingelse, bryter sløyfen.
[bool[]]$array
foreach($obj in $array)
{
if ($obj -eq $false)
{
break
}
else
{
#do something
}
}
Andre sløyfetyper, som for sløyfer og gjør-mens / gjør-til-sløyfer, er mye mer utsatt for å kjøre uendelig på grunn av dårlige initparametere.
Powershell-veiledning – Opprette en endeløs sløyfe, unngå en overflod av anropsdyp – Vexasoft
Svar
Du bruker ` pause `, f.eks:
foreach ($val in $vals) {
if ($val -eq 10) {
break
}
}