Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Kurzbeschreibung
Führt eine Anweisungsliste je nach While- oder Until-Bedingung mindestens einmal aus.
Lange Beschreibung
Das Schlüsselwort Do funktioniert mit dem Schlüsselwort While oder dem Schlüsselwort Until, um die Anweisungen in einem Skriptblock auszuführen, sofern eine Bedingung erfüllt ist. Im Gegensatz zur zugehörigen While-Schleife wird der Scriptblock in einer Do-Schleife immer mindestens einmal ausgeführt.
Eine Do-While-Schleife ist eine Variante der While-Schleife. 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 „true“ ausgewertet wird.
Wie eine Do-While-Schleife wird auch 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 Continue und Break zur Ablaufsteuerung können in einer Do-While-Schleife oder in einer Do-Until-Schleife verwendet werden.
Syntax
Das ist die Syntax der Do-While-Anweisung:
do {<statement list>} while (<condition>)
Das ist die Syntax der Do-Until-Anweisung:
do {<statement list>} until (<condition>)
Die Anweisungsliste enthält mindestens eine Anweisung, die bei jedem Starten oder Wiederholen der Schleife ausgeführt wird.
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 gezählt, bis ein Element mit dem Wert 0 erreicht wird.
PS> $x = 1,2,78,0
PS> do { $count++; $a++; } while ($x[$a] -ne 0)
PS> $count
3
Im folgenden Beispiel wird das schlüsselwort Until verwendet. Beachten Sie, dass der Ungleichheitsoperator (-ne) durch den Gleichheitsoperator (-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)