about_Logical_Operators

Korte beschrijving

Beschrijft de operators die verbinding maken met instructies in PowerShell.

Lange beschrijving

De logische PowerShell-operators verbinden expressies en instructies, zodat u één expressie kunt gebruiken om te testen op meerdere voorwaarden.

In de volgende instructie worden bijvoorbeeld de operator en operator en de operator gebruikt om drie voorwaardelijke instructies te verbinden. De instructie is alleen waar wanneer de waarde van $a groter is dan de waarde van $b en $a of $b kleiner is dan 20.

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

PowerShell ondersteunt de volgende logische operators.

  • Logische EN (-and) - TRUE wanneer beide instructies WAAR zijn.

    (1 -eq 1) -and (1 -eq 2)   # Result is False
    
  • Logische OF (-or) - TRUE wanneer een van de instructies WAAR is.

    (1 -eq 1) -or (1 -eq 2)    # Result is True
    
  • Logische EXCLUSIEVE OF (-xor) - TRUE wanneer slechts één instructie TRUE is

    (1 -eq 1) -xor (2 -eq 2)   # Result is False
    
  • Logisch niet (-not) of (!): de volgende instructie wordt genegeerd.

    -not (1 -eq 1)             # Result is False
    !(1 -eq 1)                 # Result is False
    

In de vorige voorbeelden wordt ook de gelijk aan vergelijkingsoperator -eqgebruikt. Zie about_Comparison_Operators voor meer informatie. In de voorbeelden worden ook de Booleaanse waarden van gehele getallen gebruikt. Het gehele getal 0 heeft de waarde FALSE. Alle andere gehele getallen hebben een waarde van TRUE.

De syntaxis van de logische operators is als volgt:

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

Instructies die de logische operators gebruiken, retourneren Booleaanse waarden (WAAR of ONWAAR).

De logische PowerShell-operators evalueren alleen de instructies die nodig zijn om de waarheidswaarde van de instructie te bepalen. Als de linkeroperand in een instructie die de en operator FALSE bevat, wordt de rechteroperand niet geëvalueerd. Als de linkeroperand in een instructie die de of instructie WAAR bevat, wordt de rechteroperand niet geëvalueerd. Als gevolg hiervan kunt u deze instructies op dezelfde manier gebruiken als de If instructie.

Zie ook