Beschreibt einen Sprachbefehl, mit dem Sie Anweisungslisten (about_If)
THEMAabout_IfKURZBESCHREIBUNGBeschreibt einen Sprachbefehl, mit dem Sie Anweisungslisten anhand der Ergebnisse eines oder mehrerer bedingter Tests ausführen können.DETAILBESCHREIBUNGMit der If-Anweisung können Sie Codeblöcke ausführen, wenn die angegebene Bedingungsüberprüfung "True" ergibt. Sie können auch zusätzliche Bedingungsüberprüfungen angeben, die ausgeführt werden sollen, wenn alle vorherigen Überprüfungen "False" ergeben. Schließlich können Sie einen zusätzlichen Codeblock angeben, der ausgeführt wird, wenn keine vorherige Bedingungsüberprüfung "True" ergibt. Syntax Im folgenden Beispiel wird die Syntax der If-Anweisung veranschaulicht: if (<Test1>) {<Anweisungsliste 1>} [elseif (<Test2>) {<Anweisungsliste 2>}] [else {<Anweisungsliste 3>}] Wenn Sie eine If-Anweisung ausführen, wird von Windows PowerShell die Bedingungsüberprüfung <Test1> als "True" oder "False" ausgewertet. Wenn <Test1> "True" ergibt, wird <Anweisungsliste 1> ausgeführt, und die If-Anweisung wird von Windows PowerShell beendet. Wenn <Test1> "False" ergibt, wird von Windows PowerShell die durch die Bedingungsanweisung <Test2 > angegebene Bedingung ausgewertet. Wenn <Test2> "True" ergibt, wird <Anweisungsliste 2> ausgeführt, und die If-Anweisung wird von Windows PowerShell beendet. Wenn <Test1> und <Test2> "False" ergeben, wird der Codeblock <Anweisungsliste 3> ausgeführt, und PowerShell beendet die If-Anweisung. Sie können mehrere Elseif-Anweisungen zu einer Folge von Bedingungsüberprüfungen verketten, sodass jeder Test nur ausgeführt wird, wenn alle vorherigen Überprüfungen "False" ergeben. Wenn Sie eine If-Anweisung erstellen müssen, die mehrere Elseif-Anweisungen enthält, empfiehlt sich stattdessen die Verwendung einer Switch-Anweisung. Beispiele Die einfachste If-Anweisung enthält nur einen Befehl im Codeblock und keine Elseif-Anweisungen oder Else-Anweisungen. Das folgende Beispiel zeigt die einfachste Form der If-Anweisung: if ($a -gt 2) { Write-Host "Der Wert $a ist größer als 2." } Wenn in diesem Beispiel die Variable "$a" größer als 2 ist, ergibt die Bedingung "True", und die Anweisungsliste wird ausgeführt. Wenn "$a" jedoch kleiner oder gleich 2 oder die Variable nicht vorhanden ist, wird mit der If-Anweisung keine Meldung angezeigt. Durch Hinzufügen einer Else-Anweisung wird eine Meldung angezeigt, wenn "$a" kleiner oder gleich 2 ist, wie im folgenden Beispiel gezeigt wird: if ($a -gt 2) { Write-Host "Der Wert $a ist größer als 2." } else { Write-Host "Der Wert $a ist kleiner oder gleich 2, wurde nicht erstellt oder nicht initialisiert." } Wenn Sie dieses Beispiel weiterentwickeln möchten, können Sie mit der Elseif-Anweisung eine Meldung anzeigen, wenn der Wert von "$a" gleich 2 ist, wie im folgenden Beispiel gezeigt wird: if ($a -gt 2) { Write-Host "Der Wert $a ist größer als 2." } elseif ($a -eq 2) { Write-Host "Der Wert $a ist gleich 2." } else { Write-Host "Der Wert $a ist kleiner als 2, wurde nicht erstellt oder nicht initialisiert." } SIEHE AUCH about_Comparison_Operators about_Switch C:\Windows>powershell get-help about_jobs -full
Microsoft Windows [Version 10.0.19045.3693]
Copyright (c) 2023 Microsoft Corporation.
ColorConsole [Version 3.7.1000] PowerShell 2.0-Export