about_While
Letzte Aktualisierung: Mai 2014
Betrifft: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0
THEMA
about_While
KURZE BESCHREIBUNG
Beschreibt eine Anweisung der Programmiersprache, mit der Sie einen Befehlsblock auf Basis der Ergebnisse eines bedingten Tests ausführen können.
LANGE BESCHREIBUNG
Die While-Anweisung (auch als While-Schleife bezeichnet) ist ein Sprachkonstrukt zur Erstellung einer Schleife, in der Befehle solange in einem Befehlsblock ausgeführt werden, solange die Prüfbedingung "true" ergibt. Eine While-Anweisung ist einfacher zu erstellen als eine For-Anweisung, da ihre Syntax weniger kompliziert ist. Sie ist auch flexibler als eine Foreach-Anweisung, da die Prüfbedingung in der While-Anweisung steuert, wie häufig die Schleife ausgeführt wird.
Nachfolgend sehen Sie die Syntax einer While-Anweisung:
while (<condition>){<statement list>}
Bei der Ausführung einer While-Anweisung wertet Windows PowerShell® den Abschnitt <condition> (Bedingung) der Anweisung vor der Verarbeitung des Abschnitts <statement list> (Anweisungsliste) aus. Die condition-Teil der Anweisung ergibt entweder true oder false. Solange die Bedingung true ist, führt Windows PowerShell den Abschnitt <statement list> aus.
Der Abschnitt <statement list> der Anweisung enthält einen oder mehrere Befehle, die bei jedem Eintritt in die Schleife bzw. bei deren Wiederholung ausgeführt werden.
Die folgende While-Anweisung zeigt beispielsweise die Ziffern 1 bis 3 an, wenn die Variable $val noch nicht erstellt wurde oder wenn sie erstellt, aber mit 0 initialisiert wurde.
while($val -ne 3)
{
$val++
Write-Host $val
}
In diesem Beispiel ist die Bedingung ($val ist nicht gleich 3) "true", solange $val = 0, 1, 2. Allerdings wird $val bei jeder Wiederholung der Schleife durch den unären Inkrementoperator ($val++) mit 1 inkrementiert. Bei der letzten Wiederholung der Schleife ist $val = 3. Sobald $val gleich 3 ist, ergibt die Bedingung "false" und die Schleife wird beendet.
Diesen Befehl können Sie wie folgt ganz einfach an der Befehlszeile von Windows PowerShell eingeben:
while($val -ne 3){$val++; Write-Host $val}
Beachten Sie, dass der erste Befehl, der $val um 1 inkrementiert, vom zweiten Befehl, der den Wert von $val auf der Konsole ausgibt, durch ein Semikolon getrennt wird.
SIEHE AUCH
about_Comparison_Operators
about_Do
about_Foreach
about_For
about_Language_Keywords