SET
Visualizza, imposta o rimuove le variabili d'ambiente (di CMD.EXE).
SET [variabile[=[valore]]]
SET [lettere]
SET [/A [variabile=]"espressione"]
SET [/P variabile=[stringaprompt]]
Dove:
variabile
- Specifica la variabile d'ambiente a cui dare un valore (definisce la variabile specificata). Se non viene specificato nè=
nèvalore
, visualizzerà il valore della variabile d'ambiente (se definita). Se invece viene specificato il simbolo=
ma nonvalore
, rimuove la variabile d'ambiente specificata (se definita).valore
- Specifica il valore da dare alla variabile specificata definendola (il valore è una parola, frase, numero o altro).lettere
- Visualizza il valore delle variabili d'ambiente che comincano con le lettere specificate./A
- Specifica che viene eseguita un'espressione aritmetica. Se viene specificatovariabile
la variabile d'ambiente specificata sarà definita con il risultato dell'espressione."espressione"
- Specifica l'espressione di cui ne verrà visualizzato il risultato. Se viene specificato variabile la variabile d'ambiente specificata sarà definita con il risultato dell'espressione./P
- Specifica che la variabile d'ambiente deve essere definita dall'utente (ovvero che chi apre il file batch che contiene questo comando avrà la possibilità di scegliere di scrivere una stringa qualsiasi).stringaprompt
- Visualizza la stringa di caratteri specificata che può essere una domanda o una consegna.
A cosa serve definire le variabili?
Come già spiegato precedentemente, racchiudendo la variabile d'ambiente fra percentuali % %
si espanderà il valore di quest'ultima (se definita, ovviamente).
Nell'espressione aritmetica ci possono essere i seguenti operatori:
( )
- Raggruppamento (parentesi).! ~
- Operatore NOT logico e bitwise (rispettivamente).+
- Simbolo del più (addizione aritmetica).-
- Simbolo del meno (sottrazione aritmetica).*
- Simbolo del per (moltiplicazione aritmetica)./
- Simbolo del diviso (divisione aritmetica).<< >>
- Bitwise shift.&
- Bitwise AND.^
- Bitwise XOR (or esclusivo).|
- Bitwise OR.c=n
- Assegnazione (dovec
sta per un carattere che non sia un numero o un simbolo tra quelli specificati edn
sta per un numero o espressione).,
- Separatore espressione (NB: se viene specificato una o più volte questo carattere verrà utilizzato l'ultimo risultato per impostare la variabile d'ambiente).
Notare che se al comando SET
non viene aggiunto alcun argomento, verrà visualizzata la lista completa delle variabili d'ambiente definite.
Esempi:
1. Dà il valore PIPPUS
alla variabile d'ambiente ugo
:
set ugo=PIPPUS
2. Dà il valore dell'espressione 15+18
(33) alla variabile d'amiente QUANTOFA
:
set /a QUANTOFA="15+18"
3. Dà il valore della risposta dell'utente alla variabile d'ambiente CHOICE
visualizzando Ciao pippo, quanto fa 1+1?
(vedi Il file batchIl file batch):
set /p CHOICE=Ciao pippo, quanto fa 1+1?
Approfondimento:
Per espandere una variabile d'ambiente bisogna metterla fra percentuali % %
, ad esempio %CHOICE%
, ma per espansioni personalizzate ci sono diverse sintassi:
%CHOICE:parola1=parola2%
Questa riga espande la variabile d'ambiente CHOICE
sostituendo le parole parola1
con le parole parola2
. parola2
può non essere specificato per rimuovere le parole parola1
.
%CHOICE:~2,4%
Espande i primi 4 caratteri partendo dal terzo (saltando i primi 2 caratteri) della variabile d'ambiente CHOICE
. Se 4 non viene specificato estrae i primi 2 caratteri della variabile d'ambiente CHOICE
. Se nel primo numero viene specificato 0, significa che estrae tutti i caratteri tranne i primi quattro.
%CHOICE:~-4%
Espande gli ultimi 4 caratteri della variabile d'ambiente CHOICE
.
%CHOICE:~0,-4%
Espande tutti i caratteri tranne gli ultimi 4 della variabile d'ambiente CHOICE
.
Commenti