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 -eqdi 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 FAL edizione Standard. 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 FAL edizione Standard).

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 è FAL edizione Standard, 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 .

Vedi anche