about_Do
Kurze Beschreibung
Führt eine Anweisungsliste ein oder mehrere Male aus, unterliegt einer oder Until
einer While
Bedingung.
Lange Beschreibung
Das Do
Schlüsselwort funktioniert mit dem While
Schlüsselwort oder dem Until
Schlüsselwort, um die Anweisungen in einem Skriptblock auszuführen, vorbehaltlich einer Bedingung. Im Gegensatz zur zugehörigen While
Schleife wird der Skriptblock in einer Do
Schleife immer mindestens einmal ausgeführt.
Eine Do-While-Schleife ist eine Vielzahl von Schleifen While
. In einer Do-While-Schleife wird die Bedingung ausgewertet, nachdem der Skriptblock ausgeführt wurde. Wie in einer While-Schleife wird der Skriptblock wiederholt, solange die Bedingung als wahr ausgewertet wird.
Wie eine Do-While-Schleife wird eine Do-Until-Schleife immer mindestens einmal ausgeführt, bevor die Bedingung ausgewertet wird. Der Skriptblock wird jedoch nur ausgeführt, wenn die Bedingung falsch ist.
Die Schlüsselwörter für die Continue
Break
Ablaufsteuerung können in einer Do-While-Schleife oder in einer Do-Until-Schleife verwendet werden.
Syntax
Im Folgenden wird die Syntax der Do-While-Anweisung veranschaulicht:
do {<statement list>} while (<condition>)
Im Folgenden wird die Syntax der Do-Until-Anweisung veranschaulicht:
do {<statement list>} until (<condition>)
Die Anweisungsliste enthält eine oder mehrere Anweisungen, die bei jeder Eingabe oder wiederholten Schleife ausgeführt werden.
Der Bedingungsbereich der Anweisung wird in "true" oder "false" aufgelöst. Weitere Informationen dazu, wie Booleane ausgewertet werden, finden Sie unter about_Booleans.
Beispiel
Im folgenden Beispiel einer Do
Anweisung werden die Elemente in einem Array zählt, bis es ein Element mit dem Wert 0 erreicht.
PS> $x = 1,2,78,0
PS> do { $count++; $a++; } while ($x[$a] -ne 0)
PS> $count
3
Im folgenden Beispiel wird das Until
Schlüsselwort verwendet. Beachten Sie, dass der ungleiche Operator (-ne
) durch den gleichen Operator (-eq
) ersetzt wird.
PS> $x = 1,2,78,0
PS> do { $count++; $a++; } until ($x[$a] -eq 0)
PS> $count
3
Im folgenden Beispiel werden alle Werte eines Arrays geschrieben, wobei alle Werte, die kleiner als Null sind, übersprungen werden.
do {
if ($x[$a] -lt 0) { continue }
Write-Host $x[$a]
}
while (++$a -lt 10)