about_While
Kurze Beschreibung
Beschreibt eine Sprachanweisungen, mit der Sie einen Befehlsblock basierend auf den Ergebnissen eines bedingten Tests ausführen können.
Lange Beschreibung
Die while
Anweisung (auch als while
Schleife bezeichnet) ist ein Sprachkonstrukt zum Erstellen einer Schleife, die Befehle in einem Befehlsblock ausführt, solange ein bedingter Test als wahr ausgewertet wird. Die while
Anweisung ist einfacher zu erstellen als eine For-Anweisung, da ihre Syntax weniger kompliziert ist. Darüber hinaus ist sie flexibler als die Foreach-Anweisung, da Sie einen bedingten Test in der while
Anweisung angeben, um zu steuern, wie oft die Schleife ausgeführt wird.
Im Folgenden wird die Syntax der While-Anweisung veranschaulicht:
while (<condition>){<statement list>}
Wenn Sie eine while
Anweisung ausführen, wertet PowerShell den <condition>
Abschnitt der Anweisung aus, bevor Sie den <statement list>
Abschnitt eingeben. Der Bedingungsbereich der Anweisung wird entweder auf "true" oder "false" aufgelöst. Solange die Bedingung "true" bleibt, wird der <statement list>
Abschnitt von PowerShell erneut ausgeführt. Weitere Informationen dazu, wie Booleane ausgewertet werden, finden Sie unter about_Booleans.
Der <statement list>
Abschnitt der Anweisung enthält einen oder mehrere Befehle, die jedes Mal ausgeführt werden, wenn die Schleife eingegeben oder wiederholt wird. Dies <statement list>
kann alle gültigen PowerShell-Anweisungen enthalten, einschließlich der break
Schlüsselwörter continue
.
Die folgende while
Anweisung zeigt beispielsweise die Zahlen 1 bis 3 an, wenn die $val
Variable nicht erstellt wurde oder wenn die $val
Variable erstellt und auf 0 initialisiert wurde.
while($val -ne 3)
{
$val++
Write-Host $val
}
In diesem Beispiel ist die Bedingung ($val
ungleich 3) wahr, während $val
sie gleich 0, 1 und 2 ist. Jedes Mal, wenn die Schleife durchlaufen wird, $val
wird um 1 erhöht, indem der ++
Unär-Inkrement-Operator verwendet wird. Wenn die Schleife $val
das letzte Mal auf 3 festgelegt ist, wird die Bedingungsanweisung auf "false" ausgewertet, und die Schleife wird beendet.
Um diesen Befehl bequem an der PowerShell-Eingabeaufforderung zu schreiben, können Sie ihn wie folgt eingeben:
while($val -ne 3){$val++; Write-Host $val}
Beachten Sie, dass das Semikolon den ersten Befehl trennt, der $val
dem zweiten Befehl 1 hinzufügt, der den Wert der $val
Konsole schreibt.