Logiska operatorer


Logiska operatorer används för att kombinera och utvärdera logiska uttryck, det vill säga uttryck som ger resultatet $true eller $false.
De används ofta i villkorssatser (t.ex. if) och loopar för att skapa mer flexibla och intelligenta beslut i ett skript. Ett skript är i grunden en uppsättning PowerShell-kommandon som körs i följd.
Med hjälp av logiska operatorer kan du styra hur dessa kommandon ska reagera beroende på om vissa villkor är sanna eller falska.

Översikt över logiska operatorer

Operator Alternativ (symbolisk) Betydelse Returnerar $true när … Exempel Resultat
-and && (PS 7+) OCH båda uttrycken är sanna (1 -eq 1) -and (2 -eq 2) $true
-or || (PS 7+) ELLER minst ett uttryck är sant (1 -eq 1) -or (2 -eq 3) $true
-xor Exklusivt ELLER exakt ett uttryck är sant (1 -eq 1) -xor (2 -eq 3) $true
-not ! (PS 7+) INTE uttrycket är falskt -not (1 -eq 2) $true
Not: Symboliska former &&, || och ! kräver PowerShell 7 eller senare. De verbala formerna fungerar i alla versioner.

AND ( -and )

Operatorn -and används när båda villkoren måste vara sanna för att resultatet ska bli $true.

(1 -eq 1) -and (1 -eq 2)
  • Det första uttrycket är sant (1 -eq 1), men det andra är falskt (1 -eq 2).
  • Eftersom båda måste vara sanna returneras $false.
  • Utdata: False
(100 -eq 100) -and (15 -eq 15)
  • Båda uttrycken är sanna, därför returneras $true.
  • Utdata: True

OR ( -or )

Operatorn -or används när minst ett av uttrycken ska vara sant för att resultatet ska bli $true.

(1 -eq 1) -or (1 -eq 2)
  • Det första uttrycket är sant, det andra falskt — men eftersom ett av dem är sant returnerar jämförelsen $true.
  • Utdata: True

XOR ( -xor )

  • Operatorn -xor betyder exklusivt eller.
  • Den returnerar $true endast om ett av uttrycken är santmen inte båda.
  • Om båda är sanna eller båda är falska, blir resultatet $false.
(1 -eq 1) -xor (2 -eq 2)
  • Båda uttrycken är sanna därför resultatet blir False.
  • Utdata: False
(1 -eq 1) -xor (2 -eq 3)
  • Ett uttryck är sant och det andra falskt därför resultatet blir True.
  • Utdata: True
(1 -eq 2) -xor (2 -eq 3)
  • Båda uttrycken är falska därför resultatet blir False.
  • Utdata: False

NOT ( -not )

  • Operatorn -not används för att invertera resultatet av ett uttryck.
  • Om uttrycket är sant blir resultatet falskt, och tvärtom.
-not (1 -eq 1)
  • Eftersom (1 -eq 1) är sant, gör -not det till falskt.
  • Utdata: False
-not (1 -eq 5)
  • Eftersom (1 -eq 5) är falskt, vänds resultatet till sant.
  • Utdata: True

Sammanfattning

Bra att komma ihåg:

  • -and används när båda uttrycken måste vara sanna.
  • -or används när minst ett av uttrycken måste vara sant.
  • -xor används när exakt ett av uttrycken ska vara sant.
  • -not används för att vända sanningsvärdet – sant blir falskt och falskt blir sant.