Dela via


about_Logical_Operators

Kort beskrivning

Beskriver operatorerna som ansluter instruktioner i PowerShell.

Lång beskrivning

De logiska PowerShell-operatorerna ansluter uttryck och instruktioner så att du kan använda ett enda uttryck för att testa för flera villkor.

Följande -instruktion använder till exempel operatorn och eller för att ansluta tre villkorssatser. Instruktionen gäller bara när värdet för $a är större än värdet för $b och antingen $a eller $b är mindre än 20.

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

PowerShell stöder följande logiska operatorer.

  • Logisk AND (-and) – SANT när båda uttrycken är SANNA.

    (1 -eq 1) -and (1 -eq 2)   # Result is False
    
  • Logisk ELLER (-or) – SANT när endera instruktionen är TRUE.

    (1 -eq 1) -or (1 -eq 2)    # Result is True
    
  • Logiskt EXKLUSIVT ELLER (-xor) – SANT när endast en instruktion är TRUE

    (1 -eq 1) -xor (2 -eq 2)   # Result is False
    
  • Logiskt inte (-not) eller (!) – Negerar instruktionen som följer.

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

I föregående exempel används även operatorn lika med jämförelse -eq. Mer information finns i about_Comparison_Operators. Exemplen använder också booleska värden för heltal. Heltal 0 har värdet FALSE. Alla andra heltal har värdet TRUE.

Syntaxen för de logiska operatorerna är följande:

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

Instruktioner som använder logiska operatorer returnerar booleska värden (TRUE eller FALSE).

De logiska PowerShell-operatorerna utvärderar endast de instruktioner som krävs för att fastställa sanningsvärdet för -instruktionen. Om den vänstra operanden i en -instruktion som innehåller operatorn och är FALSE utvärderas inte den högra operanden. Om den vänstra operanden i en instruktion som innehåller instruktionen eller är TRUE utvärderas inte den högra operanden. Därför kan du använda dessa instruktioner på samma sätt som du använder -instruktionen If .

Se även