about_Logical_Operators
Breve descrizione
Descrive gli operatori che connettono le istruzioni in PowerShell.
Descrizione lunga
Gli operatori logici di PowerShell connettono espressioni e istruzioni, consentendo di usare un'unica espressione per testare più condizioni.
Ad esempio, l'istruzione seguente usa l'operatore e e l'operatore o per connettere tre istruzioni condizionali. L'istruzione è true solo quando il valore di $a è maggiore del valore di $b e $a o $b è minore di 20.
($a -gt $b) -and (($a -lt 20) -or ($b -lt 20))
PowerShell supporta gli operatori logici seguenti.
AND logico (
-and
) - TRUE quando entrambe le istruzioni sono TRUE.(1 -eq 1) -and (1 -eq 2) # Result is False
OR logico (
-or
) - TRUE quando l'istruzione è TRUE.(1 -eq 1) -or (1 -eq 2) # Result is True
LOGIC EXCLUSIVE OR (
-xor
) - TRUE quando un'unica istruzione è TRUE(1 -eq 1) -xor (2 -eq 2) # Result is False
Logica non () o (
-not
!
) - Nega l'istruzione che segue.-not (1 -eq 1) # Result is False !(1 -eq 1) # Result is False
Gli esempi precedenti usano anche l'operatore -eq
di confronto uguale a . Per altre informazioni, vedere about_Comparison_Operators.
Gli esempi usano anche i valori booleani di interi. L'intero 0 ha un valore false. Tutti gli altri interi hanno un valore true.
La sintassi degli operatori logici è la seguente:
<statement> {-AND | -OR | -XOR} <statement>
{! | -NOT} <statement>
Le istruzioni che usano gli operatori logici restituiscono valori Boolean (TRUE o FALSE).
Gli operatori logici di PowerShell valutano solo le istruzioni necessarie per determinare il valore di verità dell'istruzione. Se l'operando sinistro in un'istruzione contenente l'operatore e è FALSE, l'operando destro non viene valutato. Se l'operando sinistro in un'istruzione contenente l'istruzione o è TRUE, l'operando destro non viene valutato. Di conseguenza, è possibile usare queste istruzioni nello stesso modo in cui si userebbe l'istruzione If
.