THEMA about_Logical_Operators KURZBESCHREIBUNG Beschreibt die Operatoren zum Verbinden von Anweisungen in Windows PowerShell. DETAILBESCHREIBUNG Mit den logischen Operatoren in Windows PowerShell können Sie Ausdrücke und Anweisungen verbinden sowie mit einem einzelnen Ausdruck mehrere Bedingungen testen. In der folgenden Anweisung werden beispielsweise der AND-Operator und der OR-Operator verwendet, um drei bedingte Anweisungen zu verbinden. Die Anweisung hat den Wert "True" nur, wenn der Wert von $a größer als der Wert von $b ist und $a oder $b kleiner als 20 ist. ($a -gt $b) -and (($a -lt 20) -or ($b -lt 20)) In Windows PowerShell werden folgende logische Operatoren unterstützt: Operator Beschreibung Beispiel -------- ------------------------------ ------- -and Logisches UND. Nur TRUE, (1 -eq 1) -and (1 -eq 2) wenn beide Anweisungen False TRUE sind. -or Logisches ODER. TRUE, (1 -eq 1) -or (1 -eq 2) wenn eine oder beide True Anweisungen TRUE sind. -xor Logisches exklusives ODER. (1 -eq 1) -xor (2 -eq 2) Nur TRUE, wenn eine der False Anweisungen TRUE, die andere aber FALSE ist. -not Logisches NICHT. Negiert -not (1 -eq 1) die Anweisung, die auf den False Operator folgt. ! Logisches NICHT. Negiert !(1 -eq 1) die Anweisung, die auf den False Operator folgt (mit -not identisch). Hinweis: In den obigen Beispielen wird auch der Gleichheitsoperator (-eq) verwendet. Weitere Informationen finden Sie unter "about_Comparison_Operators". In den Beispielen werden auch die booleschen Werte von ganzen Zahlen verwendet. Die ganze Zahl 0 besitzt den Wert FALSE. Alle anderen ganzen Zahlen besitzen den Wert TRUE. Für logische Operatoren wird die folgende Syntax verwendet: <Anweisung> {-AND | -OR | -XOR} <Anweisung> {! | -NOT} <Anweisung> Anweisungen, in den die logischen Operatoren verwendet werden, geben boolesche Werte (TRUE oder FALSE) zurück. Mit den logischen Operatoren in Windows PowerShell werden nur die Anweisungen ausgewertet, die zum Ermitteln des Wahrheitswerts der Anweisung erforderlich sind. Wenn der linke Operand in einer Anweisung, die den AND-Operator enthält, FALSE ist, wird der rechte Operand nicht ausgewertet. Wenn der linke Operand in einer Anweisung, die die OR-Anweisung enthält, TRUE ist, wird der rechte Operand nicht ausgewertet. Daher können Sie diese Anweisungen wie eine If-Anweisung verwenden. SIEHE AUCH about_Operators Compare-Object about_Comparison_operators about_If