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 -eqporó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 .

Zobacz też