about_Logical_Operators
Krótki opis
Opisuje operatory łączące instrukcje w programie PowerShell.
Długi opis
Operatory logiczne programu PowerShell łączą wyrażenia i instrukcje, dzięki czemu można użyć pojedynczego wyrażenia do testowania pod kątem wielu warunków.
Na przykład poniższa instrukcja używa operatora i i operatora or do łączenia trzech instrukcji warunkowych. Instrukcja jest prawdziwa tylko wtedy, gdy wartość $a jest większa niż wartość $b, a wartość $a lub $b jest mniejsza niż 20.
($a -gt $b) -and (($a -lt 20) -or ($b -lt 20))
Program PowerShell obsługuje następujące operatory logiczne.
Logical AND (
-and
) — prawda, gdy obie instrukcje mają wartość TRUE.(1 -eq 1) -and (1 -eq 2) # Result is False
Logical OR (
-or
) — wartość TRUE, gdy albo instrukcja ma wartość TRUE.(1 -eq 1) -or (1 -eq 2) # Result is True
Logiczne WYŁĄCZNOŚĆ LUB (
-xor
) — PRAWDA, gdy tylko jedna instrukcja ma wartość TRUE(1 -eq 1) -xor (2 -eq 2) # Result is False
Nie logiczne () lub (
-not
!
) — neguje następującą instrukcję.-not (1 -eq 1) # Result is False !(1 -eq 1) # Result is False
W poprzednich przykładach użyto również operatora -eq
porównania równego . Aby uzyskać więcej informacji, zobacz about_Comparison_Operators.
W przykładach użyto również wartości logicznych liczb całkowitych. Liczba całkowita 0 ma wartość FALSE. Wszystkie inne liczby całkowite mają wartość TRUE.
Składnia operatorów logicznych jest następująca:
<statement> {-AND | -OR | -XOR} <statement>
{! | -NOT} <statement>
Instrukcje używające operatorów logicznych zwracają wartości logiczne (PRAWDA lub FAŁSZ).
Operatory logiczne programu PowerShell oceniają tylko instrukcje wymagane do określenia wartości prawdy instrukcji. Jeśli lewy operand w instrukcji zawierającej operator i ma wartość FALSE, prawy operand nie jest oceniany. Jeśli lewy operand w instrukcji zawierającej instrukcję or ma wartość TRUE, prawy operand nie jest obliczany. W związku z tym można użyć tych instrukcji w taki sam sposób, jak w przypadku użycia instrukcji If
.