jammy (7) environ.7.gz

Provided by: manpages-pl_4.13-4_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).

       Note that the behavior of many programs and library routines is influenced by the presence  or  value  of
       certain environment variables.  Examples include the following:

       *  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 tempnam(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).

UWAGI

       The prctl(2)  PR_SET_MM_ENV_START and PR_SET_MM_ENV_END operations can be used to control the location of
       the process's environment.

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

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

O STRONIE

       Angielska  wersja  tej strony pochodzi z wydania 5.10 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 są: Przemek Borys <pborys@dione.ids.pl>,
       Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

       Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje  o  warunkach  licencji  można  uzyskać
       zapoznając  się  z  GNU General Public License w wersji 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ lub
       nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

       Błędy w tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy  dyskusyjnej  ⟨manpages-pl-
       list@lists.sourceforge.net⟩.