Linux env · 3 min read · Sep 17, 2025

Tutorial sul comando Linux env per principianti (5 esempi)

Il comando Linux env viene utilizzato per visualizzare e gestire le variabili d’ambiente in una sessione shell. Le variabili d’ambiente sono valori dinamici che influenzano i processi o i programmi in esecuzione nella shell, come i percorsi dei file eseguibili, le impostazioni specifiche dell’utente e il comportamento del sistema. Eseguendo il comando env senza argomenti, elenca tutte le variabili d’ambiente attuali e i loro valori. Inoltre, env può essere utilizzato per eseguire un comando con un ambiente modificato impostando temporaneamente o sovrascrivendo specifiche variabili d’ambiente per la durata di quel comando. Questo è utile per testare o eseguire programmi in un ambiente specifico senza alterare la configurazione globale.

Ma prima di fare ciò, vale la pena menzionare che tutti i comandi e le istruzioni in questo tutorial sono stati testati su Debian 12 e Ubuntu 24.04.

Comando Linux env

Per definizione, il comando env ti consente di eseguire un programma in un ambiente modificato. Di seguito è riportata la sintassi del comando, come menzionato nella sua pagina man:

env [OPZIONE]... [-] [NOME=VALORE]... [COMANDO [ARG]...]

Ecco cosa dice la pagina man su env:

Imposta ogni NOME su VALORE nell'ambiente ed esegui COMANDO.

I seguenti esempi in stile Q&A dovrebbero darti un’idea migliore di come funziona questo comando:

D1. Come accedere a tutte le variabili d’ambiente utilizzando il comando env?

L’ambiente Bash, come potresti già sapere, consiste in voci VARNAME=VALUE. Per accedere a tutte le variabili d’ambiente e ai valori associati, esegui il comando env senza alcuna opzione.

env

Ecco l’output del comando sopra nel nostro caso:

Come accedere a tutte le variabili d'ambiente utilizzando il comando env

D2. Come cambiare temporaneamente l’ambiente utilizzando env?

La caratteristica principale di env è la capacità di cambiare temporaneamente l’ambiente di un processo. Ad esempio, abbiamo creato un piccolo eseguibile - chiamato env - che visualizza il valore della variabile d’ambiente USER al momento dell’esecuzione.

Ecco l’output nello scenario normale:

Ora, ciò che abbiamo fatto è stato utilizzare il comando env per cambiare temporaneamente il valore della variabile d’ambiente USER da ‘himanshu’ a ‘HTF’ per l’eseguibile/processo. Di seguito è riportato il comando che abbiamo utilizzato in questo caso:

env USER=HTF ./env

Ecco l’output prodotto in questo caso:

Quindi puoi vedere che l’eseguibile ha restituito il nuovo valore.

Nota: Come suggerito dalla sintassi generica dello strumento, puoi modificare i valori di più variabili d’ambiente e far sì che il processo utilizzi questi nuovi valori.

D3. Come far ignorare a un processo l’ambiente esistente utilizzando env?

Se vuoi, puoi anche far ignorare a un processo l’ambiente esistente/eredato e iniziare con uno vuoto. Questo può essere fatto utilizzando l’opzione -i o –ignore-environment.

Ad esempio:

D4. Come far utilizzare a env NUL invece del carattere di nuova riga nell’output?

Nell’esempio precedente di cui abbiamo discusso, le righe di output prodotte da env sono separate da una nuova riga. Tuttavia, se lo desideri, puoi far utilizzare a env il carattere NUL come separatore. Questa funzione può essere accessibile utilizzando l’opzione della riga di comando –null.

env --null

Di seguito è riportato uno screenshot di esempio;

Come far utilizzare a env NUL invece del carattere di nuova riga nell'output

D5. Come conoscere l’errore in base allo stato di uscita del comando env?

Il comando env produce i seguenti codici di uscita: 0, 125, 126 e 127. Di seguito sono riportate le descrizioni degli errori associati:

0   se non è specificato alcun COMANDO e l'ambiente è in output  
125 se ‘env’ stesso fallisce  
126 se il COMANDO è trovato ma non può essere invocato  
127 se il COMANDO non può essere trovato

Se ricevi un codice di errore diverso da quelli menzionati sopra, quello è lo stato di uscita restituito dal processo/comando che è stato eseguito con un ambiente modificato.

Conclusione

Se sei un principiante completo della riga di comando, è probabile che tu non abbia bisogno di questo strumento su base quotidiana. Tuttavia, ciò non significa che non valga la pena conoscerlo - infatti, env è davvero utile in molte situazioni. Gli esempi che abbiamo condiviso in questo tutorial dovrebbero essere sufficienti per darti un buon inizio. Per ulteriori informazioni, vai alla pagina man del comando, o meglio, esegui il seguente comando:

info coreutils env invocation
Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.