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 operatorn 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 TRUE.

    (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
    
  • Logisk 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 likheten med jämförelseoperatorn -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