Le variabili d'ambiente di Linux

Le variabili d'ambiente sul sistema operativo Linux sono indirizzi di memoria dove sono registrati nomi e valori associati tra loro.

Come funziona una variabile d'ambiente? Nel sistema ogni nome svolge una particolare funzione. Quando si modifica il valore associato a un nome di variabile, cambia il comportamento del sistema.

Un esempio pratico

Nella variabile di ambiente PS1 è indicata la stringa usata per il prompt della linea di comando.

PS1

Nella variabile PWD è registrata la directory corrente.

PWD

E così via.

Come visualizzare una variabile di ambiente

Per visualizzare il valore registrato in una variabile di ambiente, si utilizza il comando echo.

echo $+[nome variabile]

In alternativa si può usare il comando printenv

printenv [nome variabile]

Un esempio pratico

Per vedere il contenuto della variabile PWD apro il terminale e digito

echo $PWD

Come si può facilmente notare, in questo caso alla variabile va aggiunto il prefisso $ ( dollaro ).

In risposta il sistema mostra la directory in cui mi trovo.

la visualizzazione del valore assegnato a una variabile d'ambiente

In alternativa potrei usare il comando printenv

printenv PWD

In questo caso la variabile è senza il simbolo del dollaro $.

Linux legge e mostra il contenuto della variabile.

la visualizzazione della variabile di ambiente PWD dalla linea di comando Linux

Il risultato finale è sempre lo stesso.

Quali sono le variabili di ambiente su Linux

Le principali variabili di ambiente sul s.o. Linux sono le seguenti:

  • HOME la directory dell'utente
  • EDITOR il programma di default per editare i testi
  • PWD la directory corrente
  • OLDPWD la directory precedente
  • PATH le directory dove cercare i comandi
  • PS1 il prompt del terminale
  • LOGNAME il nome di login dell'utente
  • USER il nome dell'utente

E altri ancora.

Come visualizzare tutte le variabili di ambiente

Per visualizzare i valori di tutte le variabili di ambiente, digito il comando printenv senza aggiungere nulla.

printenv

Il sistema Linix elenca tutte le variabili d'ambiente in ordine alfabetico.

tutte le variabili d'ambiente del sistema

Il valore assegnato a ogni variabile è indicato a destra del nome, dopo il simbolo uguale.

Come modificare una variabile di ambiente

Per modificare il contenuto di una variabile di ambiente, basta digitare il suo nome sulla linea di comando e assegnargli un valore tra virgolette, dopo il simbolo uguale.

nomevariabile = 'valore'

Un esempio pratico

Per modificare la stringa del prompt digito:

PS1 = ' $> '

Dopo aver dato invio, il prompt del terminale è diventato '$>'.

Nota. Per personalizzare il prompt con colori, variabili e varie informazioni ho scritto degli appunti appositi "come personalizzare il prompt del terminale di Linux" a cui rimando.

Come creare delle variabili di ambiente locali

Allo stesso modo posso creare delle variabili d'ambiente locali, oltre quelle già presenti nella shell.

In questo caso, devo indicare il nome della variabile e assegnarli un valore.

nomevariabile = 'valore'

Il processo è sempre lo stesso.

Esempio

Creo la variabile PIPPO e gli assegno il valore 1.

PIPPO='1'

Dopo aver dato invio, la variabile locale PIPPO viene creata e gli viene assegnato il valore '1'.

Per una verifica digito sul terminale echo $PIPPO

la verifica alla creazione e assegnazione di una variabile d'ambiente locale su Linux

Il comando stampa a video il valore della variabile locale ed è effettivamente uguale a '1'.

Attenzione. Le variabili locali sono registrate temporaneamente nella sessione corrente dell'utente e valgono soltanto nell'ambiente corrente. Non sono esportate all'ambiente della shell. Quindi, se la shell lancia un programma, quest'ultimo non può leggere le variabili d'ambiente locali della sessione dell'utente.

Come cancellare una variabile locale

Per eliminare una variabile d'ambiente locale utilizzo il comando unset.

unset [ nome variabile ]

Esempio pratico

Per cancellare la variabile d'ambiente locale PIPPO scrivo

unset PIPPO

Il comando cancella la variabile locale PIPPO dalla memoria del sistema.

Per fare una verifica digito echo $PIPPO sul terminale

la verifica dopo la cancellazione della variabile d'ambiente

Ora la variabile $PIPPO è vuota.

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Libri di approfondimento

Linux

FAQ