Provided by: manpages-pl_20060617-4_all bug

NAZWA

       environ - środowisko użytkownika

SKŁADNIA

       extern char **environ;

OPIS

       Zmienna  environ  wskazuje  na tablicę łańcuchów zwaną ,,środowiskiem”.
       (Zmienna ta musi być zdefiniowana  w  programie  użytkownika,  jednakże
       jest  ona  zadeklarowana  w pliku nagłówkowym unistd.h, w przypadku gdy
       plik ten pochodzi z libc4 lub libc5 oraz w przypadku gdy pochodzi on  z
       glibc  a  zdefiniowano  _GNU_SOURCE.  Ta tablica łańcuchów udostępniana
       jest  procesowi  przez  funkcję  exec(3)   podczas  jego  uruchamiania.
       Zgodnie  z  konwencją  łańcuchy  znaków  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ą
              LC_ALL  lub  inne  bardziej szczegółowe zmienne, jak LC_COLLATE,
              LC_CTYPE, LC_MESSAGES, LC_MONETARY,  LC_NUMERIC,  LC_TIME,  por.
              locale(5).

       PATH   Ciąg   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    Aktualny 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.

       Dalsze nazwy mogą być umieszczane  w  środowisku  za  pomocą  polecenia
       export  i  ,,nazwa=wartość”  w  przypadku stosowania powłoki typu sh(1)
       lub polecenia setenv w przypadku powłoki typu csh(1). 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, por. locale(5).

       TMPDIR wpływa na prefiks ścieżki w nazwach tworzonych przez tmpnam(3) i
       inne  funkcje,  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(),  localtime(),  mktime(),
       strftime().  Zobacz także tzselect(1).

       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).

       Itd.

BŁĘDY

       Oczywiści 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  sie  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

       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)

INFORMACJE O TŁUMACZENIU

       Powyższe  tłumaczenie   pochodzi   z   nieistniejącego   już   Projektu
       Tłumaczenia  Manuali i moe nie by aktualne. W razie zauważenia różnic
       między powyższym opisem a rzeczywistym zachowaniem opisywanego programu
       lub  funkcji,  prosimy o zapoznanie się z oryginalną (angielską) wersją
       strony podręcznika.