TÓPICO
about_Logical_Operators
DESCRIÇÃO RESUMIDA
Descreve os operadores que conectam instruções no Windows PowerShell.
DESCRIÇÃO LONGA
Os operadores lógicos do Windows 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 os operadores and e or para
conectar três instruções condicionais. A instrução é true 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 Windows PowerShell dá suporte aos seguintes operadores lógicos.
Operador Descrição Exemplo
-------- ------------------------------ ---------------------------
-and and lógico. TRUE somente quando (1 -eq 1) -and (1 -eq 2)
ambas as instruções são TRUE. False
-or or lógico. TRUE quando uma ou (1 -eq 1) -or (1 -eq 2)
ambas as instruções são TRUE True
-xor or lógico exclusivo. TRUE (1 -eq 1) -xor (2 -eq 2)
somente quando uma das False
instruções é TRUE e a outra
é FALSE.
-not not lógico. Nega a instrução -not (1 -eq 1)
que o segue. False
! not lógico. Nega a instrução
que o segue (o mesmo que -not) !(1 -eq 1)
False
Observação: o exemplo anterior também usa igual para o operador de
comparação (-eq). 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 Windows PowerShell avaliam somente as
instruções exigidas para determinar o valor true da instrução. Se
o operando da esquerda em uma instrução que contém o operador and
for FALSE, o operando da direita não será avaliado. Se o operando
da esquerda em uma instrução que contém a instrução or for TRUE,
o operando da direita não será avaliado. Consequentemente, você
pode usar essas instruções da mesma forma que usaria a instrução If.
CONSULTE TAMBÉM
about_Operators
Compare-Object
about_Comparison_operators
about_If