Provided by: manpages-de_1.4-1_all bug

BEZEICHNUNG

       environ - Umgebung des Benutzers

ÜBERSICHT

       extern char **environ;

BESCHREIBUNG

       Die Variable environ zeigt auf die »Umgebung«, ein Feld von Zeigern auf Zeichenketten. Der
       letzte Zeiger in diesem Feld hat den Wert NULL. (Diese Variable muss  im  Anwenderprogramm
       deklariert  werden,  ist  aber  für  Glibc, Libc4 und Libc5 in der Header-Datei <unistd.h>
       definiert (für Glibc muss außerdem _GNU_SOURCE definiert sein)).  Die  Umgebung  wird  dem
       Prozess von dem exec(3)-Aufruf, der den Prozess gestartet hat, verfügbar gemacht.

       Konventionsgemäß  haben  Zeichenketten  in environ die Form »Name=Wert«. Häufige Beispiele
       sind:

       USER   Der Name des angemeldeten Benutzers (wird von einigen Programmen aus  der  BSD-Welt
              ausgewertet).

       LOGNAME
              Der   Name  des  angemeldeten  Benutzers  (wird  von  einigen  Programmen  aus  der
              System-V-Welt ausgewertet).

       HOME   Das Anmeldeverzeichnis eines Benutzers, wird von login(1) aus der  Datei  passwd(5)
              entnommen.

       LANG   Der  Name einer Locale (eines Gebietsschemas), die für Locale-Kategorien angewendet
              werden soll. Die Locale kann durch LC_ALL  oder  spezielle  Umgebungsvariablen  wie
              LC_COLLATE,  LC_CTYPE,  LC_MESSAGES, LC_MONETARY, LC_NUMERIC, LC_TIME überschrieben
              werden (vgl. locale(5)).

       PATH   Die Folge von Verzeichnisnamen, in denen sh(1) und  viele  weitere  Programme  nach
              Dateien mit unvollständigen Namen suchen. Die einzelnen Bestandteile/Präfixe werden
              durch ':' getrennt. (Gleichermaßen benutzen einige Shells CDPATH, um das Ziel eines
              cd-Befehls zu finden, man(1) sucht in MANPATH nach Handbuchseiten, usw.)

       PWD    das aktuelle Arbeitsverzeichnis; gesetzt von einigen Shells

       SHELL  Der Pfadname der Login-Shell des Benutzers. (Mit dieser Shell arbeitet der Benutzer
              nach seiner Anmeldung.)

       TERM   Der Terminaltyp, für den Ausgaben aufbereitet werden.

       PAGER  das vom Benutzer bevorzugte Programm für die Anzeige von Textdateien

       EDITOR/VISUAL
              das vom Benutzer bevorzugte Programm für die Bearbeitung von Textdateien

       Der Umgebung können weitere Namen hinzugefügt werden. Dazu benutzt man für die  sh(1)  den
       Befehl  export  und  »Name=Inhalt«,  für  die  csh(1) gibt es den setenv-Befehl. Argumente
       können auch beim Aufruf von exec(3) an  die  Umgebung  weitergegeben  werden.  C-Programme
       können  ihre  Umgebung  mit den Funktionen getenv(3), putenv(3), setenv(3) und unsetenv(3)
       beeinflussen.

       Bitte beachten Sie, dass  das  Verhalten  vieler  Programme  und  Bibliotheksroutinen  vom
       Vorhandensein  oder  dem  Inhalt  bestimmter  Umgebungsvariablen  beeinflusst  wird.  Eine
       willkürliche Auswahl:

       Die Variablen LANG, LANGUAGE, NLSPATH, LOCPATH, LC_ALL, LC_MESSAGES usw. beeinflussen  die
       Handhabung der Locale, vgl. locale(5).

       TMPDIR  beeinflusst  die  Pfadangabe für tmpnam(3) beim Anlegen von Dateien, das temporäre
       Verzeichnis von sort(1) usw.

       LD_LIBRARY_PATH, LD_PRELOAD und andere  LD_*  Variablen  beeinflussen  das  Verhalten  des
       dynamischen Laders/Linkers.

       POSIXLY_CORRECT  veranlasst  bestimmte  Programme  und  Bibliotheksroutinen,  sich  an die
       POSIX-Vorgaben zu halten.

       Das Verhalten von malloc(3) wird von MALLOC_*-Variablen gesteuert.

       Die Variable HOSTALIASES  enthält  den  Namen  der  Datei,  in  der  die  Alias-Namen  für
       gethostbyname(3) stehen.

       TZ und TZDIR stellen Informationen über Zeitzonen für tzset(3) bereit und dadurch auch für
       Funktionen wie ctime(3), localtime(3), mktime(3) und strftime(3). Siehe auch tzselect(8).

       TERMCAP informiert darüber,  wie  bestimmte  Terminals  angesteuert  werden  müssen  (oder
       enthält den Namen einer Datei, die diese Informationen bereitstellt).

       COLUMNS  und  LINES  informieren  Programme  über  die Größe des Fensters und setzen damit
       vielleicht die tatsächliche Größe außer Kraft.

       PRINTER oder LPDEST können den gewünschten Drucker angeben, siehe lpr(1).

       Usw.

FEHLER

       Es  ist  offensichtlich,  dass  es  hier  ein  Sicherheitsproblem  gibt.   Schon   mancher
       Systembefehl  hat  den  Pfad der Tugend verlassen, weil ein Benutzer ungebräuchliche Werte
       für IFS oder LD_LIBRARY_PATH angegeben hat.

       Es besteht auch die Gefahr der »Verschmutzung des Namensraums«.  Programme  wie  make  und
       autoconf  erlauben  Überschreiben der Namen von Standard-Dienstprogrammen aus der Umgebung
       mit ähnlich benannten Variablen in Großbuchstaben. So verwendet man CC, um den gewünschten
       C-Compiler  zu  wählen  (und  analog  MAKE,  AR, AS, FC, LD, LEX, RM, YACC, usw.). Aber in
       einigen traditionellen Nutzungen gibt eine  Umgebungsvariable  keinen  Pfadnamen,  sondern
       Programmoptionen  an.  So  gibt  es  MORE, LESS und GZIP. Diese Verwendung wird als falsch
       verstanden angesehen und sollte für neue Programme vermieden werden. Die Autoren von  gzip
       sollten erwägen, ihre Option in GZIP_OPT umzubenennen.

SIEHE AUCH

       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)

KOLOPHON

       This page is part of release 3.54 of the Linux man-pages project.  A  description  of  the
       project,     and    information    about    reporting    bugs,    can    be    found    at
       http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die  deutsche  Übersetzung  dieser  Handbuchseite  wurde  von  Martin   Eberhard   Schauer
       <Martin.E.Schauer@gmx.de> erstellt.

       Diese  Übersetzung  ist  Freie  Dokumentation;  lesen  Sie  die GNU General Public License
       Version  3  oder  neuer  bezüglich  der  Copyright-Bedingungen.  Es  wird  KEINE   HAFTUNG
       übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-
       Mail an <debian-l10n-german@lists.debian.org>.