# Variabili d'ambiente Le variabili d'ambiente (`environment variables`) sono coppie chiave-valore utilizzate per memorizzare informazioni di configurazione a livello di sistema operativo. Tali variabili influenzano il comportamento dei processi e delle applicazioni in esecuzione, consentendo di personalizzare l’ambiente di lavoro. ## Identificazione delle variabili d’ambiente Per elencare tutte le variabili d’ambiente attualmente definite, è possibile utilizzare il comando `env`. Questo comando restituisce un elenco completo delle variabili e dei rispettivi valori. La variabile `PATH` è particolarmente importante, in quanto contiene un elenco di directory, separate dal carattere `:`, in cui la shell ricerca gli eseguibili. In questo modo, è possibile avviare un programma semplicemente digitandone il nome, senza dover specificare il percorso assoluto. Per visualizzare il valore di una specifica variabile d’ambiente, si utilizza il comando `echo`, anteponendo il simbolo `$` al nome della variabile: ```bash echo $EDITOR vim echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin ``` ## Creazione di nuove variabili d’ambiente Per creare una nuova variabile d'ambiente, si può utilizzare la seguente sintassi: ```bash myvar=variable echo $myvar variable ``` È importante notare che una variabile d'ambiente creata in questo modo è disponibile solo all'interno della sessione di shell corrente. Per renderla disponibile anche a tutte le shell figlie, è necessario utilizzare il comando `export`: ```bash myvar=variable export myvar bash echo $myvar variable ``` ## Cancellazione Per rimuovere una variabile d'ambiente, si utilizza il comando `unset`, seguito dal nome della variabile: ```bash unset myvar ``` ## Caratteri speciali Durante l’assegnazione o l’utilizzo di variabili d’ambiente, è importante prestare attenzione ai caratteri speciali, che possono essere interpretati in modo diverso a seconda del contesto. Le virgolette singole (`' '`) conservano il valore letterale di tutti i caratteri, mentre le virgolette doppie (`" "`) conservano il valore letterale di tutti i caratteri, ad eccezione di `$`, `` ` `` e `\`, che mantengono il loro significato speciale. Per interpretare letteralmente un carattere speciale, è possibile anteporre un backslash (`\`) al carattere stesso. Ad esempio, per creare un file con spazi nel nome, si utilizza la sintassi seguente: ```bash touch my\ big\ file ```