about_Logical_Operators
Descrizione breve
Descrive gli operatori che connettono le istruzioni in PowerShell.
Descrizione lunga
Gli operatori logici di PowerShell connettono espressioni e istruzioni, consentendo di usare una singola espressione per testare più condizioni.
Ad esempio, l'istruzione seguente usa l'operatore e e l'operatore or 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 una delle istruzioni è TRUE.(1 -eq 1) -or (1 -eq 2) # Result is True
LOGICAL EXCLUSIVE OR (
-xor
) - TRUE quando una sola istruzione è TRUE(1 -eq 1) -xor (2 -eq 2) # Result is False
Not logico (
-not
) o (!
): nega l'istruzione seguente.-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.
Negli esempi vengono usati anche i valori booleani di numeri interi. L'intero 0 ha un valore FALSE. Tutti gli altri numeri 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 booleani (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 che contiene l'operatore e è FALSE, l'operando destro non viene valutato. Se l'operando sinistro in un'istruzione che contiene 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
.