Partager via


about_Logical_Operators

Description courte

Décrit les opérateurs qui connectent des instructions dans PowerShell.

Description longue

Les opérateurs logiques PowerShell connectent des expressions et des instructions, ce qui vous permet d’utiliser une seule expression pour tester plusieurs conditions.

Par exemple, l’instruction suivante utilise l’opérateur et l’opérateur et l’opérateur pour connecter trois instructions conditionnelles. L’instruction est vraie uniquement lorsque la valeur de $a est supérieure à la valeur de $b, et que $a ou $b est inférieure à 20.

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

PowerShell prend en charge les opérateurs logiques suivants.

  • LOGIQUE AND (-and) : TRUE lorsque les deux instructions sont TRUE.

    (1 -eq 1) -and (1 -eq 2)   # Result is False
    
  • OR logique (-or) : TRUE lorsque l’une ou l’autre instruction a la valeur TRUE.

    (1 -eq 1) -or (1 -eq 2)    # Result is True
    
  • LOGICAL EXCLUSIVE OR (-xor) - TRUE quand une seule instruction a la valeur TRUE

    (1 -eq 1) -xor (2 -eq 2)   # Result is False
    
  • Logique non (-not) ou (!) : annule l’instruction qui suit.

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

Les exemples précédents utilisent également l’opérateur -eqde comparaison égal à . Pour plus d’informations, consultez about_Comparison_Operators. Les exemples utilisent également les valeurs booléennes des entiers. L’entier 0 a la valeur FALSE. Tous les autres entiers ont la valeur TRUE.

La syntaxe des opérateurs logiques est la suivante :

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

Les instructions qui utilisent les opérateurs logiques retournent des valeurs booléennes (TRUE ou FALSE).

Les opérateurs logiques PowerShell évaluent uniquement les instructions requises pour déterminer la valeur de vérité de l’instruction. Si l’opérande gauche dans une instruction qui contient l’opérateur et est FALSE, l’opérande droit n’est pas évalué. Si l’opérande gauche d’une instruction qui contient l’instruction ou a la valeur TRUE, l’opérande droit n’est pas évalué. Par conséquent, vous pouvez utiliser ces instructions de la même façon que vous l’utiliseriez If .

Voir aussi