about_Logical_Operators
Aggiornamento: maggio 2014
Si applica a: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0
ARGOMENTO
about_Logical_Operators
DESCRIZIONE BREVE
Descrive gli operatori che collegano le istruzioni in Windows PowerShell®.
DESCRIZIONE LUNGA
Gli operatori logici di Windows PowerShell connettono espressioni e istruzioni, consentendo di usare una sola espressione per testare più condizioni.
Ad esempio, l'istruzione seguente usa l'operatore and e quello or per connettere tre istruzioni condizionali. L'istruzione è true solo quando il valore $a è maggiore di $b e $a o $b è inferiore a 20.
($a -gt $b) -and (($a -lt 20) -or ($b -lt 20))
Windows PowerShell supporta gli operatori logici seguenti.
Operator Description Example
-------- ------------------------------ ------------------------
-and Logical and. TRUE only when (1 -eq 1) -and (1 -eq 2)
both statements are TRUE. False
-or Logical or. TRUE when either (1 -eq 1) -or (1 -eq 2)
or both statements are TRUE. True
-xor Logical exclusive or. TRUE (1 -eq 1) -xor (2 -eq 2)
only when one of the statements False
is TRUE and the other is FALSE.
-not Logical not. Negates the -not (1 -eq 1)
statement that follows it. False
! Logical not. Negates the !(1 -eq 1)
statement that follows it. False
(Same as -not)
Nota:
Gli esempi precedenti usano anche l'operatore di confronto di uguale a (-eq). Per altre informazioni, vedere about_Comparison_Operators. Gli esempi usano anche i valori booleani di numeri interi. Il numero intero 0 ha un valore pari a FALSE. Tutti gli altri numeri interi hanno un valore pari a TRUE.
La sintassi degli operatori logici è la seguente:
<statement> {-AND | -OR | -XOR} <statement>
{! | -NOT} <statement>
Le istruzioni che usano gli operatori logici restituiscono valori booleani (TRUE o FALSE).
Gli operatori logici di Windows PowerShell valutano solo le istruzioni richieste per determinare il valore vero dell'istruzione. Se l'operando sinistro in un'istruzione che contiene l'operatore and è FALSE, l'operando destro non viene valutato. Se l'operando sinistro in un'istruzione che contiene l'istruzione or è TRUE, l'operando destro non viene valutato. Di conseguenza, è possibile usare queste istruzioni nello stesso modo in cui si userebbe l'istruzione if.
VEDERE ANCHE
about_Operators
Compare-Object
about_Comparison_operators
about_If