Provided by: manpages-pl_0.7-1_all bug

NAZWA

       environ - środowisko użytkownika

SKŁADNIA

       extern char **environ;

OPIS

       Zmienna environ wskazuje na tablicę łańcuchów zwaną "środowiskiem". Ostatni wskaźnik w tej
       tablicy  musi  mieć  wartość  NULL.  (Zmienna  ta  musi  być  zadeklarowana  w   programie
       użytkownika, jednakże jest ona zadeklarowana w pliku nagłówkowym unistd.h, w przypadku gdy
       ustawiono testowe makro _GNU_SOURCE. Ta  tablica  łańcuchów  udostępniana  jest  procesowi
       przez  funkcję  exec(3)  podczas jego uruchamiania. Gdy proces potomny jest tworzony przez
       fork(2), dziedziczy copy ze środowiska swojego rodzica.

       Zgodnie z konwencją łańcuchy znaków w tablicy environ mają postać "nazwa=wartość".  Typowe
       przykłady to:

       USER   Nazwa  zalogowanego  użytkownika  (wykorzystywana przez niektóre programy wywodzące
              się z BSD).

       LOGNAME
              Nazwa zalogowanego użytkownika (wykorzystywana przez  niektóre  programy  wywodzące
              się z Systemu V).

       HOME   Katalog  domowy  użytkownika, zmienna ustawiana przez program login(1) na podstawie
              informacji z pliku passwd(5).

       LANG   Nazwa ustawień językowych, jaka ma być stosowana dla wszystkich kategorii ustawień,
              jeśli  nie  zostały  narzucone  przez  zmienną  środowiskową,  taką jak LC_COLLATE,
              LC_CTYPE, LC_MESSAGES,  LC_MONETARY,  LC_NUMERIC  i  LC_TIME  (zob.  locale(7)  aby
              dowiedzieć się więcej o zmiennych LC_*).

       PATH   Sekwencja  katalogów,  które  sh(1)  oraz  wiele  innych  programów  przeszukuje  w
              poszukiwaniu  plików,  których  nazwa   nie   zawiera   pełnej   ścieżki   dostępu.
              Poszczególne  katalogi  są  rozdzielane  znakiem ":" (podobnie, CDPATH jest używane
              przez niektóre powłoki do poszukiwania katalogu  docelowego  dla  polecenia  zmiany
              katalogu,  a  MANPATH  jest  używane przez man(1) do poszukiwania stron podręcznika
              itd.).

       PWD    Bieżący katalog roboczy. Ustawiane przez niektóre powłoki.

       SHELL  Nazwa powłoki zgłoszeniowej użytkownika.

       TERM   Rodzaj terminala, dla którego system ma przygotowywać wyjście.

       PAGER  Wybrane przez użytkownika narzędzie do wyświetlania plików tekstowych.

       EDITOR/VISUAL
              Wybrane przez użytkownika narzędzie do edycji plików tekstowych.

       Nazwy mogą być umieszczane w środowisku powłoki poleceniem export w sh(1) lub setenv jeśli
       korzysta się z csh(1).

       Na  początkowe  środowisko  powłoki  ma  wpływ  wiele  czynników,  takich  jak definicje z
       /etc/environment przetwarzane dla wszystkich użytkowników przy logowaniu przez  pam_env(8)
       (w systemach korzystających z pam(8)). Dodatkowo wiele inicjalizacyjnych skryptów powłoki,
       takich  jak  systemowy  skrypt  /etc/profile  i   skrypty   inicjalizacyjne   użytkowników
       mogą zawierają  polecenia  dodające  zmienne  do środowiska powłoki; proszę zapoznać się z
       podręcznikiem systemowym swojej powłoki, aby dowiedzieć się więcej.

       Powłoki wzorowane na powłoce Bourne'a obsługują składnię

           NAZWA=wartość polecenie

       aby zdefiniować zmienną środowiskową wyłącznie w zakresie procesu wykonującego  polecenie.
       Przed poleceniem można podać wiele definicji, oddzielonych białym znakiem.

       W  środowisku  mogą  być  również  umieszczane  argumenty  w  momencie wykonywania funkcji
       exec(3). Program napisany w C może manipulować środowiskiem za pomocą  funkcji  getenv(3),
       putenv(3), setenv(3) i unsetenv(3).

       Trzeba  zauważyć,  że  obecność  lub  wartości  pewnych zmiennych środowiska mają wpływ na
       zachowanie wielu programów i funkcji bibliotecznych. Przypadkowy zbiór:

       Zmienne LANG, LANGUAGE, NLSPATH, LOCPATH, LC_ALL, LC_MESSAGES, itd.  wpływają  na  obsługę
       ustawień językowych, zob. catopen(3), gettext(3) i locale(7).

       TMPDIR  wpływa na prefiks ścieżki w nazwach tworzonych przez tmpnam(3) i inne funkcje oraz
       katalog tymczasowy wykorzystywany przez sort(1) i inne programy itd.

       LD_LIBRARY_PATH,  LD_PRELOAD  i  inne  zmienne  LD_*  wpływają  na   zachowanie   programu
       ładującego/konsolidatora bibliotek dynamicznych.

       POSIXLY_CORRECT  powoduje,  że  niektóre  programy  i  funkcje  biblioteczne przestrzegają
       zaleceń POSIX.

       Na zachowanie malloc(3) wpływają zmienne MALLOC_*.

       Zmienna HOSTALIASES określa nazwę pliku  zawierającego  aliasy,  z  których  ma  korzystać
       gethostbyname(3).

       TZ  i  TZDIR  podają  informacje  o strefie czasowej wykorzystywaną przez tzset(3) i przez
       funkcje  takie  jak  ctime(3),  localtime(3),  mktime(3),   strftime(3).    Zobacz   także
       tzselect(8).

       TERMCAP  podaje informacje o tym, jak adresować określony terminal (lub podaje nazwę pliku
       zawierającego te informacje).

       COLUMNS i LINES mówią aplikacjom o rozmiarze okna, ewentualnie  narzucając  wartości  inne
       niż rzeczywiste rozmiary.

       PRINTER lub LPDEST mogą określać drukarkę, która powinna być używana. Zobacz lpr(1).

BŁĘDY

       Oczywiście istnieje tu ryzyko naruszenia bezpieczeństwa. Wiele poleceń systemowych zostało
       oszukanych w celu wyrządzenia szkody przez użytkownika,  który  nadał  nietypowe  wartości
       zmiennym IFS lub LD_LIBRARY_PATH.

       Istnieje  również  ryzyko  skażenia  przestrzeni  nazw. Programy takie jak make i autoconf
       pozwalają na nadpisywanie  domyślnych  nazw  programów  narzędziowych  poprzez  środowisko
       zawierające  zmienne  o  nazwach  podobnych  do  nazw tych programów, ale składających się
       wyłącznie z wielkich liter.  Zatem używa się CC do określenia pożądanego kompilatora C  (i
       podobnie  MAKE,  AR, AS, FC, LD, LEX, RM, YACC itd.).  Jednakże, w niektórych tradycyjnych
       zastosowaniach takie zmienne środowiskowe podają  opcje  dla  programów  zamiast  ścieżki.
       Zatem  mamy  MORE, LESS i GZIP. Takie zastosowanie jest traktowane jako błędne i należy go
       unikać w nowych programach. Autorzy programu gzip powinni  rozważyć  zmianę  nazwy  swojej
       opcji na GZIP_OPT.

ZOBACZ TAKŻE

       env(1),  bash(1),  csh(1),  login(1), printenv(1), sh(1), tcsh(1), execve(2), clearenv(3),
       exec(3), getenv(3), pam_env(3), putenv(3), setenv(3), unsetenv(3), locale(7), ld.so(8)

O STRONIE

       Angielska wersja tej strony  pochodzi  z  wydania  4.05  projektu  Linux  man-pages.  Opis
       projektu,  informacje  dotyczące  zgłaszania błędów, oraz najnowszą wersję oryginału można
       znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

TŁUMACZENIE

       Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Przemek  Borys  (PTM)
       <pborys@dione.ids.pl>,    Robert    Luberda    <robert@debian.org>    i    Michał   Kułach
       <michal.kulach@gmail.com>.

       Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów  na
       stronie   http://sourceforge.net/projects/manpages-pl/.   Jest   zgodne   z  wersją   4.05
       oryginału.