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