Introduzione a Unix
Indietro | Capitolo 5 Shell | Avanti

# 5.2 Variabili di ambiente

Le variabili di ambiente sono usate per fornire informazioni ai programmi che si utilizzano. Si possono avere sia variabili globali di ambiente sia variabili locali di shell. Le variabili globali di ambiente sono inizializzate attraverso la propria shell di login e i nuovi programmi e le nuove shell ereditano l'ambiente della shell genitore. Le variabili locali di shell sono usate solamente dalla shell corrente e non sono passate ad altri processi. Un processo figlio non può passare una variabile al suo processo padre.

Le variabili di ambiente correnti sono visualizzabili con i comandi env(1) o printenv(1). Alcune comuni variabili sono:

`DISPLAY` | Il display grafico da usare, esempio `nyssa:0.0`
`EDITOR` | Il path (percorso) del proprio editor di default, esempio `/usr/bin/vi`
`GROUP` | Il proprio gruppo di login, esempio `staff`
`HOME` | Il path della propria home directory, esempio `/home/frank`
`HOST` | Il nome host del proprio sistema, esempio `nyssa`
`IFS` | I separatori di campo interni, generalmente alcuni spazi bianchi (tab, spazio e new-line di default)
`LOGNAME` | Il nome del proprio login, esempio `frank`
`PATH` | I path per ricercare i comandi, esempio `/usr/bin:/usr/ucb:/usr/local/bin`
`PS1` | La stringa del prompt primario, solamente shell Bourne ($ di default)
`PS2` | La stringa del prompt secondario, solamente shell Bourne (> di default)
`SHELL` | La propria shell di login, esempio `/usr/bin/csh`
`TERM` | Il proprio tipo di terminale, esempio `xterm`
`USER` | Il proprio username, esempio `frank`

Molte variabili di ambiente sono inizializzate automaticamente quando si effettua il login. Queste possono essere modificate e si possono definire altre variabili nei propri file di inizializzazione o in qualunque momento all'interno della shell. Alcune variabili che è possibile si voglia cambiare sono `PATH` e `DISPLAY`. La variabile `PATH` specifica le directory nelle quali saranno automaticamente cercati i comandi richiesti. Alcuni esempi sono nello script di inizializzazione di shell mostrato più avanti.

Per la shell C si può settare una variabile globale di ambiente con un comando simile a quello usato per visualizzare le variabili:

    % setenv NOME valore

e per la shell Bourne:

    $ NOME=valore; export NOME

Si possono elencare le proprie variabili globali di ambiente con i comandi env(1) o printenv(1). Si possono resettare queste variabili con i comandi `unsetenv` (shell C) o `unset` (shell Bourne).

Per settare una variabile locale di shell in shell C si usa il comando `set` con la sintassi seguente. Senza opzioni `set` mostra tutte le variabili locali.

    % set nome=valore

Per la shell Bourne si setta una variabile locale di shell con:

    $ nome=valore

Il valore corrente di una variabile è accessibile attraverso le notazioni `$`nome`` o `${`nome`}`.

Indietro | Partenza | Avanti
Shell | Risali | La shell Bourne, sh

Questo, ed altri documenti, possono essere scaricati da ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Per domande su FreeBSD, leggi la documentazione prima di contattare <questions@FreeBSD.org>.
Per domande su questa documentazione, invia una e-mail a <doc@FreeBSD.org>.