Script batch - Operatori logici

Gli operatori logici vengono utilizzati per valutare le espressioni booleane. Di seguito sono riportati gli operatori logici disponibili.

Il linguaggio batch è dotato di un set completo di operatori logici booleani come AND, OR, XOR, ma solo per i numeri binari. Né ci sono valori per VERO o FALSO. L'unico operatore logico disponibile per le condizioni è l'operatore NOT.

Il modo più semplice per implementare l'operatore AND / OR per numeri non binari consiste nell'utilizzare la condizione IF annidata. L'esempio seguente mostra come questo può essere implementato.

Esempio

@echo off
SET /A a = 5
SET /A b = 10
IF %a% LSS 10 (IF %b% GTR 0 (ECHO %a% is less than 10 AND %b% is greater than 0))

Produzione

Il comando precedente produce il seguente output.

5 is less than 10 AND 10 is greater than 0

Di seguito è riportato un esempio dell'operazione AND che può essere implementata utilizzando l'istruzione IF.

Esempio

@echo off
SET /A a = 5
SET /A b = 10

IF %a% GEQ 10 (
   IF %b% LEQ 0 (
      ECHO %a% is NOT less than 10 OR %b% is NOT greater than 0
   ) ELSE (
      ECHO %a% is less than 10 OR %b% is greater than 0
   )
) ELSE (
   ECHO %a% is less than 10 OR %b% is greater than 0
)

Produzione

Il comando precedente produce il seguente output.

5 is less than 10 AND 10 is greater than 0

Di seguito è riportato un esempio di come può essere utilizzato l'operatore NOT.

Esempio

@echo off
SET /A a = 5
IF NOT %a%==6 echo "A is not equal to 6"

Produzione

Il comando precedente produce il seguente output.

"A is equal to 5"