Env (Unix)
# Env (Unix)

env (abbreviazione dalla lingua inglese di environment, ambiente) è un comando dei sistemi operativi Unix e Unix-like, e più in generale dei sistemi POSIX e GNU, che avvia altri comandi con precise impostazioni delle variabili d'ambiente.

env può anche essere usato per visualizzare le impostazioni correnti delle variabili d'ambiente, o anche per avviare comandi di cui non si conosce con precisione il pathname.

## Sintassi

La sintassi generale di env è

Il parametro facoltativo comando indica un comando da eseguire, opzionalmente seguito dai suoi parametri. Il parametro comando può essere specificato tramite un pathname relativo o assoluto, o anche con il suo nome di base (privo dell'indicazione della directory che lo contiene): in quest'ultimo caso env, analogamente alle shell testuali, effettua una ricerca nelle directory elencate nella variabile d'ambiente $PATH.

Il doppio trattino -- (facoltativo) indica che i parametri successivi non sono da considerarsi opzioni.

È possibile assegnare una o più variabili d'ambiente (visibili solo a comando) usando uno o più parametri nella forma "variabile=valore".

Se env è invocato senza alcun comando, esso si limita a mostrare il valore corrente delle variabili d'ambiente (incluse quelle opzionalmente specificate come parametri).

L'unica opzione degna di nota è -i, che fa in modo che comando abbia visibilità delle sole variabili d'ambiente specificate come parametri ad env, e non anche di quelle correntemente impostate.

## Esempi

Mostra le impostazioni correnti delle variabili d'ambiente:

Mostra sullo standard output le impostazioni correnti delle variabili d'ambiente, ordinandole alfabeticamente usando sort in una pipeline software:

Avvia una nuova shell Bash senza le variabili d'ambiente correnti:

Esegue il comando dell'X Window System xcalc con un valore diverso della variabile d'ambiente DISPLAY:

