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.
| Operator | Beschrijving | Voorbeeld |
|---|---|---|
-and |
Logisch EN. WAAR wanneer beide | (1 -eq 1) -and (1 -eq 2) |
| instructies zijn WAAR. | False |
|
-or |
Logische OR. WAAR wanneer een van beide | (1 -eq 1) -or (1 -eq 2) |
| de instructie WAAR is. | True |
|
-xor |
Logisch EXCLUSIEF OF. WAAR wanneer | (1 -eq 1) -xor (2 -eq 2) |
| slechts één instructie is WAAR | False |
|
-not |
Logisch niet. De instructie wordt ontkend | -not (1 -eq 1) |
| dat volgt. | False |
|
! |
Hetzelfde als -not |
!(1 -eq 1) |
False |
Opmerking:
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 gebruikmaken van de logische operators 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 met de operator FALSE is, 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.