Provided by:
manpages-cs_0.18.20090209-2_all 
JMÉNO
environ - uživatelské prostředí
POUŽITÍ
extern char **environ;
POPIS
Proměnná environ odkazuje na pole řetězců nazývané "prostředí"
(environment). (Tato proměnná musí být deklarována v uživatelském
programu. Pouze v případě, že hlavičkové soubory pocházejí z libc4
nebo libc5, anebo pocházejí z glibc a zároveň je definováno _GNU_SOURCE
, je proměnná deklarována v hlavičkovém souboru <unistd.h>). Toto pole
řetězců je zpřístupněno procesu voláním exec(3) , které spustilo
proces. Podle konvence mají tyto řetězce tvar "jmno=hodnota". Obvyklé
případy:
USER Jméno přihlášeného uživatele (je používáno některými programy
odvozenými z BSD).
LOGNAME
Jméno přihlášeného uživatele (je používáno některými programy
odvozenými z System-V).
HOME Uživatelův domovský adresář, který je nastaven při přihlášení
programem login(1) ze souboru hesel passwd(5).
LANG Název locale které má být použito pro kategorie locale, pokud
není nastaveno LC_ALL nebo konkrétnější proměnné prostředí jako
LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_MONETARY, LC_NUMERIC,
LC_TIME, viz locale(5).
PATH Seznam adresářů, které sh(1) a mnoho dalších programů používá
při hledání souboru u něhož není známa kompletní cesta.
Jednotlivé adresáře jsou odděleny ':'. (Podobně se CDPATH
používá v některých shellech k nalezení cíle pro příkaz změny
adresáře, man(1) používá MANPATH k nalezení manuálových stránek,
atd.)
PWD Aktuální pracovní adresář. Nastavují jej některé shelly.
SHELL Cesta k login shellu uživatele.
TERM Typ terminálu, pro který má být připraven výstup.
PAGER Uživatelem preferovaná utilita pro zobrazení textových souborů.
EDITOR/VISUAL
Uživatelem preferovaná utilita pro editování textových souborů.
Další jména mohou být do prostředí umístěna příkazem export a
"jméno=hodnota" v sh(1) nebo příkazem setenv v csh(1). Argumenty
mohou být umístěny do prostředí i při volání funkce exec(3). Program v
C může manipulovat svým prostředím pomocí funkcí getenv(3), putenv(3),
setenv(3), a unsetenv(3).
Chování mnoha programů a knihovních rutin je ovlivněno přítomností nebo
hodnotou určitých proměnných prostředí. Náhodný výběr:
Proměnné LANG, LANGUAGE, NLSPATH, LOCPATH, LC_ALL, LC_MESSAGES, atd.
ovlivňují použití locale, srov. locale(5).
TMPDIR ovlivňuje prefix cesty u názvů, které vytváří tmpnam(3) a jiné
rutiny, dočasný adresář, který používá sort(1) a jiné programy, atd.
LD_LIBRARY_PATH, LD_PRELOAD a další LD_* proměnné ovlivňují chování
dynamického loaderu/linkeru.
POSIXLY_CORRECT způsobí, že se určité programy a knihovní rutiny drží
předpisů POSIX.
Chování malloc(3) je ovlivněno proměnnými MALLOC_*.
Proměnná HOSTALIASES obsahuje název souboru, který obsahuje aliasy pro
použití s gethostbyname(3).
TZ a TZDIR obsahují informaci o časové zóně, kterou používá tzset(3) a
tím pádem i funkce jako ctime(3), localtime(3), mktime(3), strftime(3).
Viz též tzselect(8).
TERMCAP obsahuje informaci o možnostech terminálu (nebo název souboru
obsahujícího tuto informaci).
COLUMNS a LINES sdělují aplikacím velikost okna, bez ohledu na jeho
skutečnou velikost.
PRINTER nebo LPDEST mohou určit tiskárnu, která má být použita. Viz
lpr(1).
Atd.
CHYBY
Je zde jasné bezpečností riziko. Mnoho systémových příkazů může být
svedeno k páchání škody uživatelem, který zadal zvláštní hodnoty pro
IFS nebo LD_LIBRARY_PATH.
Existuje také riziko kontaminace jmenného prostoru. Programy jako make
a autoconf umožňují upřednostnit výchozí názvy utilit prostředí podobně
pojmenovanými proměnnými zapsanými velkými písmeny. Takže se používá
CC pro výběr požadovaného překladače C (a podobně i MAKE, AR, AS, FC,
LD, LEX, RM, YACC, atd.). Nicméně při klasickém použití předává
takováto proměnná prostředí programu volbu, nikoliv název soboru.
Takže se používá MORE, LESS, a GZIP. Takovéto použití se pokládá za
chybu a nové programy by se mu měly vyhýbat. Autoži programu gzip by
měli zvážit přejmenování volby na GZIP_OPT.
DALŠÍ INFORMACE
bash(1), csh(1), login(1), sh(1), tcsh(1), execve(2), clearenv(3),
exec(3), getenv(3), putenv(3), setenv(3), unsetenv(3), locale(5)
TIRÁŽ
Tato stránka je součástí projektu Linux man-pages. Popis projektu a
informace o hlášení chyb najdete na
http://www.kernel.org/doc/man-pages/.