about_Logical_Operators
DESCRIPCIÓN BREVE
Describe los operadores que conectan instrucciones en PowerShell.
DESCRIPCIÓN LARGA
Los operadores lógicos de PowerShell conectan expresiones e instrucciones, lo que le permite usar una expresión única para probar varias condiciones.
Por ejemplo, la siguiente instrucción usa el operador y y el operador o para conectar tres instrucciones condicionales. La instrucción solo es true cuando el valor de $a es mayor que el valor de $b y $a o $b es menor que 20.
($a -gt $b) -and (($a -lt 20) -or ($b -lt 20))
PowerShell admite los siguientes operadores lógicos.
Operador | Descripción | Ejemplo |
---|---|---|
-and |
Y lógico. TRUE cuando ambos | (1 -eq 1) -and (1 -eq 2) |
las instrucciones son TRUE. | False |
|
-or |
O lógico. TRUE cuando | (1 -eq 1) -or (1 -eq 2) |
la instrucción es TRUE. | True |
|
-xor |
EXCLUSIVE LÓGICO O. TRUE cuando | (1 -eq 1) -xor (2 -eq 2) |
solo una instrucción es TRUE | False |
|
-not |
No es lógico. Niega la instrucción | -not (1 -eq 1) |
eso sigue. | False |
|
! |
Igual que -not . |
!(1 -eq 1) |
False |
Nota:
En los ejemplos anteriores también se usa el operador -eq
de comparación igual a . Para obtener más información, consulte about_Comparison_Operators. Los ejemplos también usan los valores booleanos de enteros. El entero 0 tiene un valor false. Todos los demás enteros tienen un valor true.
La sintaxis de los operadores lógicos es la siguiente:
<statement> {-AND | -OR | -XOR} <statement>
{! | -NOT} <statement>
Las instrucciones que usan los operadores lógicos devuelven valores booleanos (TRUE o FALSE).
Los operadores lógicos de PowerShell evalúan solo las instrucciones necesarias para determinar el valor verdadero de la instrucción. Si el operando izquierdo de una instrucción que contiene el operador y es FALSE, no se evalúa el operando derecho. Si el operando izquierdo de una instrucción que contiene la instrucción o es TRUE, el operando derecho no se evalúa. Como resultado, puede usar estas instrucciones de la misma manera que usaría la instrucción If.