about_Logical_Operators
Descrição breve
Descreve os operadores que conectam instruções no PowerShell.
Descrição longa
Os operadores lógicos do PowerShell conectam expressões e instruções, permitindo que você use uma única expressão para testar várias condições.
Por exemplo, a instrução a seguir usa o operador and e o operador or para conectar três instruções condicionais. A afirmação é verdadeira somente quando o valor de $a é maior que o valor de $b e $a ou $b é menor que 20.
($a -gt $b) -and (($a -lt 20) -or ($b -lt 20))
O PowerShell dá suporte aos operadores lógicos a seguir.
Lógico AND (
-and
) - VERDADEIRO quando ambas as instruções são VERDADEIRAS.(1 -eq 1) -and (1 -eq 2) # Result is False
Lógico OR (
-or
) - VERDADEIRO quando qualquer uma das instruções é VERDADEIRA.(1 -eq 1) -or (1 -eq 2) # Result is True
Lógico EXCLUSIVE OR (
-xor
) - TRUE quando apenas uma instrução é TRUE(1 -eq 1) -xor (2 -eq 2) # Result is False
Lógico não (
-not
) ou (!
) - Nega a instrução a seguir.-not (1 -eq 1) # Result is False !(1 -eq 1) # Result is False
Os exemplos anteriores também usam o operador -eq
de comparação igual a . Para obter mais informações, consulte about_Comparison_Operators.
Os exemplos também usam os valores booleanos de inteiros. O inteiro 0 tem um valor de FALSE. Todos os outros inteiros têm um valor de TRUE.
A sintaxe dos operadores lógicos é a seguinte:
<statement> {-AND | -OR | -XOR} <statement>
{! | -NOT} <statement>
As instruções que usam os operadores lógicos retornam valores booleanos (TRUE ou FALSE).
Os operadores lógicos do PowerShell avaliam apenas as instruções necessárias para determinar o valor verdadeiro da instrução. Se o operando esquerdo em uma instrução que contém o operador and for FALSE, o operando direito não será avaliado. Se o operando esquerdo em uma instrução que contém a instrução or for TRUE, o operando direito não será avaliado. Como resultado, você pode usar essas instruções da mesma forma que usaria a If
instrução.