Freigeben über


about_Logical_Operators

KURZE BESCHREIBUNG

Beschreibt die Operatoren, die Anweisungen in PowerShell verbinden.

LANGE BESCHREIBUNG

Die logischen PowerShell-Operatoren verbinden Ausdrücke und Anweisungen, sodass Sie einen einzelnen Ausdruck verwenden können, um auf mehrere Bedingungen zu testen.

Die folgende Anweisung verwendet beispielsweise den Operator und und den Operator oder, um drei bedingte Anweisungen zu verbinden. Die Anweisung ist nur wahr, wenn der Wert von $a größer als der Wert von $b ist und entweder $a oder $b kleiner als 20 ist.

($a -gt $b) -and (($a -lt 20) -or ($b -lt 20))

PowerShell unterstützt die folgenden logischen Operatoren.

Operator BESCHREIBUNG Beispiel
-and Logisches AND. TRUE, wenn beide (1 -eq 1) -and (1 -eq 2)
-Anweisungen sind TRUE. False
-or Logisches OR. TRUE, wenn einer der beiden (1 -eq 1) -or (1 -eq 2)
-Anweisung ist TRUE. True
-xor Logisches EXKLUSIVES ODER. TRUE, wenn (1 -eq 1) -xor (2 -eq 2)
nur eine Anweisung ist TRUE False
-not Logisch nicht. Negiert die Anweisung -not (1 -eq 1)
folgt. False
! Identisch mit -not !(1 -eq 1)
False

Hinweis:

In den vorherigen Beispielen wird auch der Gleichvergleichsoperator -eqverwendet. Weitere Informationen finden Sie unter about_Comparison_Operators. In den Beispielen werden auch die booleschen Werte ganzer Zahlen verwendet. Die ganze Zahl 0 hat den Wert FALSE. Alle anderen ganzen Zahlen weisen den Wert TRUE auf.

Die Syntax der logischen Operatoren lautet wie folgt:

<statement> {-AND | -OR | -XOR} <statement>
{! | -NOT} <statement>

Anweisungen, die die logischen Operatoren verwenden, geben boolesche Werte (TRUE oder FALSE) zurück.

Die logischen PowerShell-Operatoren werten nur die Anweisungen aus, die zum Bestimmen des Wahrheitswerts der Anweisung erforderlich sind. Wenn der linke Operand in einer Anweisung, die den Operator und enthält, FALSE ist, wird der rechte Operand nicht ausgewertet. Wenn der linke Operand in einer Anweisung, die die -Anweisung oder enthält, TRUE ist, wird der rechte Operand nicht ausgewertet. Daher können Sie diese Anweisungen auf die gleiche Weise wie die If -Anweisung verwenden.

SIEHE AUCH

about_Operators

Compare-Object

about_Comparison_operators

about_If