Tutorial de comenzi Linux env pentru începători
Comanda Linux env este utilizată pentru a afișa și gestiona variabilele de mediu într-o sesiune shell. Variabilele de mediu sunt valori dinamice care afectează procesele sau programele care rulează în shell, cum ar fi căile către fișierele executabile, setările specifice utilizatorului și comportamentul sistemului. Prin rularea comenzii env fără argumente, aceasta listează toate variabilele de mediu curente și valorile acestora.
În plus, env poate fi utilizat pentru a executa o comandă cu un mediu modificat prin setarea temporară sau suprascrierea anumitor variabile de mediu pe durata comenzii respective. Acest lucru este util pentru testarea sau rularea programelor într-un mediu specific fără a modifica configurația globală.
Dar înainte de a face asta, merită menționat faptul că toate comenzile și instrucțiunile din acest tutorial au fost testate pe Debian 12 și Ubuntu 24.04.
Comandă Linux env
Prin definiție, comanda env vă permite să rulați un program într-un mediu modificat. Sintaxa comenzii, așa cum este menționată pe pagina sa de manual, este următoarea:
env [OPTION]... [-] [NAME=VALUE]... [COMMAND [ARG]...]
Și iată ce spune pagina de manual despre mediu:
Setați fiecare NAME la VALUE în env și executați COMMAND.
Următoarele exemple în stil Întrebări și Răspunsuri ar trebui să vă ofere o idee mai bună despre cum funcționează această comandă:
Cum se schimbă temporar mediul folosind env?
Caracteristica cheie a programului env este capacitatea de a modifica temporar mediul unui proces. De exemplu, am creat un mic fișier executabil — denumit env — care afișează valoarea variabilei de mediu USER la execuție.
Iată rezultatul în scenariul normal:
Acum, ceea ce am făcut a fost să folosim comanda env pentru a schimba temporar valoarea variabilei de mediu USER de la „himanshu” la „HTF” pentru executabil/proces. Iată comanda pe care am folosit-o în acest caz:
env USER=HTF ./env
Și iată rezultatul produs în acest caz:
Cum se accesează toate variabilele de mediu folosind comanda env?
Mediul Bash, după cum probabil știți deja, constă din intrări VARNAME=VALUE. Pentru a accesa toate variabilele de mediu, precum și valorile asociate acestora, executați comanda env fără nicio opțiune.
env
Iată rezultatul comenzii de mai sus în cazul nostru:
Deci puteți vedea că executabilul a returnat noua valoare.
Notă: Așa cum sugerează sintaxa generică a instrumentului, puteți modifica valorile mai multor variabile de mediu și puteți face ca procesul să utilizeze aceste valori noi.
Cum se poate face ca un proces să ignore mediul existent folosind env?
Dacă doriți, puteți face ca un proces să ignore mediul existent/moștenit și să înceapă cu unul gol. Acest lucru se poate face folosind opțiunea -i sau –ignore-environment .
De exemplu:
Cum se face ca env să utilizeze NUL în loc de caracterul newline în ieșire?
În primul exemplu discutat mai sus, liniile de ieșire produse de env sunt separate prin linie nouă. Totuși, dacă doriți, puteți face ca env să utilizeze caracterul NUL ca separator. Această funcție poate fi accesată folosind opțiunea de linie de comandă –null.
env --nul
Mai jos este un exemplu de captură de ecran;
Cum pot afla eroarea pe baza stării de ieșire a comenzii env?
Comanda env produce următoarele coduri de ieșire: 0, 125, 126 și 127. Următoarele sunt descrierile erorilor asociate:
0 if no COMMAND is specified and the environment is output 125 if ‘env’ itself fails 126 if COMMAND is found but cannot be invoked 127 if COMMAND cannot be found








