Provided by: manpages-fr_4.13-4_all bug

NOM

       environ – Environnement utilisateur

SYNOPSIS

       extern char **environ;

DESCRIPTION

       La   variable   environ   pointe   sur   un   tableau   de  pointeurs  de  chaînes  appelé
       « environnement ». Le dernier pointeur de ce tableau vaut NULL. (Cette variable doit  être
       déclarée  dans  les  programmes  des  utilisateurs, mais elle est déclarée dans le fichier
       d'en-tête <unistd.h> si la macro de test de fonctionnalités _GNU_SOURCE est  définie.)  Ce
       tableau  de  chaînes de caractères est fourni au processus par l'appel exec(3) qui démarre
       le processus. Quand un processus enfant est créé à l’aide  de  fork(2),  il  hérite  d’une
       copie de l’environnement parent.

       Par  convention,  ces  chaînes  dans environ sont de la forme « nom=valeur ». Des exemples
       classiques sont :

       USER   Le nom de l'utilisateur connecté (utilisé par des programmes de style BSD).

       LOGNAME
              Le nom  de  l'utilisateur  connecté  (utilisé  par  certains  programmes  de  style
              System V).

       HOME   Le  répertoire  de  login  d'un  utilisateur,  mis  en place par login(1) depuis le
              fichier de mots de passe passwd(5).

       LANG   Le nom de la régionalisation à utiliser pour les catégories de locale  quand  elles
              ne  sont  pas  écrasées  par LC_ALL ou une variable d'environnement plus spécifique
              telle que LC_COLLATE,  LC_CTYPE,  LC_MESSAGES,  LC_MONETARY,  LC_NUMERIC,  LC_TIME.
              Consultez locale(7) pour plus de détails sur les variables d’environnement LC_*.

       PATH   Une  liste de répertoires que sh(1) et de nombreux autres programmes utilisent pour
              trouver un fichier dont le chemin est incomplet. Les préfixes sont séparés par  des
              « : ».  De  même,  il  existe  CDPATH qui est utilisé par certains interpréteurs de
              commandes pour connaître le chemin de destination d'une commande de  changement  de
              répertoire, MANPATH utilisé par man(1) pour trouver les pages de manuel, etc.

       PWD    Le   répertoire  de  travail  utilisé,  renseigné  par  certains  interpréteurs  de
              commandes.

       SHELL  Le chemin de l'interpréteur de connexion de l'utilisateur.

       TERM   Le type de terminal utilisé pour les affichages.

       PAGER  L'application préférée de l'utilisateur pour afficher des fichiers texte.

       EDITOR/VISUAL
              L'application préférée de l'utilisateur pour éditer des fichiers texte.

       Les noms peuvent être placés dans l’environnement de l’interpréteur de  commandes  par  la
       commande export dans sh(1) ou par la commande setenv si csh(1) est utilisé.

       L’environnement  initial  de l’interpréteur de commandes est rempli de différentes façons,
       telles que des définitions dans /etc/environment pouvant être traitées par pam_env(8) pour
       tous  les  utilisateurs  au moment de la connexion (sur les systèmes utilisant pam(8)). De
       plus, divers scripts d’initialisation d’interpréteur de  commandes,  tels  que  le  script
       /etc/profile  pour  tout  le  système  et  les  scripts  d’initialisation propres à chaque
       utilisateur peuvent comporter des commandes ajoutant des variables  à  l’environnement  de
       l’interpréteur  de commandes. Consultez le manuel de l’interpréteur de commandes pour plus
       de détails.

       Les interpréteurs de commandes de style Bourne gèrent la syntaxe

           NOM=valeur commande

       pour créer une définition de variable d’environnement  uniquement  dans  le  périmètre  du
       processus  qui  exécute la commande. Plusieurs variables d’environnement, séparées par des
       espaces blancs, peuvent précéder la commande.

       Des arguments peuvent aussi être  insérés  dans  l'environnement  lors  d'un  exec(3).  Un
       programme C  peut  manipuler  son  environnement  avec les fonctions getenv(3), putenv(3),
       setenv(3) et unsetenv(3).

       Remarquez que le comportement de nombreux  programmes  ou  routines  de  bibliothèque  est
       influencé  par  la  présence ou la valeur de certaines variables d'environnement. En voici
       quelques exemples :

       –  Les variables LANG, LANGUAGE, NLSPATH, LOCPATH, LC_ALL, LC_MESSAGES, etc.,  influencent
          la gestion de la régionalisation. Consultez catopen(3), gettext(3) et locale(7).

       –  TMPDIR  modifie  le  préfixe  de  chemin  d'accès  des fichiers créés par tempnam(3) et
          d'autres fonctions, et  le  répertoire  temporaire  utilisé  par  sort(1)  et  d'autres
          programmes.

       –  LD_LIBRARY_PATH,  LD_PRELOAD  et  d'autres  variables LD_* modifient le comportement du
          chargeur et de l'éditeur de lien dynamique.

       –  POSIXLY_CORRECT oblige certains programmes ou  routines  de  bibliothèque  à  respecter
          scrupuleusement la norme POSIX.

       –  Le comportement de malloc(3) est influencé par les variables MALLOC_*.

       –  La variable HOSTALIASES fournit le nom d’un fichier contenant les alias à utiliser avec
          gethostbyname(3).

       –  TZ et TZDIR gèrent les informations sur les fuseaux horaires utilisées par tzset(3)  et
          donc  par  les  fonctions  comme  ctime(3),  localtime(3),  mktime(3)  et  strftime(3).
          Consultez aussi tzselect(8).

       –  TERMCAP donne des indications sur la manière de traiter un terminal (ou  donne  le  nom
          d'un fichier contenant ces spécifications).

       –  COLUMNS  et  LINES  indiquent  aux applications la taille de la fenêtre, éventuellement
          avec préséance sur la taille réelle.

       –  PRINTER ou LPDEST indiquent l'imprimante à utiliser. Consultez lpr(1).

NOTES

       Les opérations PR_SET_MM_ENV_START et PR_SET_MM_ENV_END de prctl(2) peuvent être utilisées
       pour contrôler l’emplacement de l’environnement du processus.

BOGUES

       Il  est clair qu'il y a ici un risque de sécurité. De nombreuses commandes système peuvent
       être induites en erreur par un utilisateur qui fournirait des valeurs  inhabituelles  pour
       IFS ou LD_LIBRARY_PATH.

       Il  y  a  aussi  un risque de pollution de l'espace des noms. Des programmes comme make et
       autoconf permettent la surcharge des noms d'utilitaires par défaut de l’environnement  par
       des  variables  d'environnement avec le même nom en capitales. Ainsi, CC peut être utilisé
       pour choisir le compilateur C (et de même pour MAKE, AR, AS, FC, LD, LEX, RM, YACC, etc.).
       Toutefois  dans certains utilisations traditionnelles, de telles variables fournissent des
       options à certains programmes plutôt qu'un chemin. Ainsi, un utilisateur peut avoir  MORE,
       LESS  et  GZIP.  De  telles utilisations sont considérées fautives et doivent être évitées
       dans les nouveaux programmes. Les auteurs de gzip devraient penser à renommer leur  option
       GZIP_OPT.

VOIR AUSSI

       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)

COLOPHON

       Cette page fait partie de la publication 5.10 du projet man-pages Linux.  Une  description
       du  projet et des instructions pour signaler des anomalies et la dernière version de cette
       page peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION

       La traduction française de cette  page  de  manuel  a  été  créée  par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,  Stéphan  Rafin  <stephan.rafin@laposte.net>, Thierry
       Vignaud <tvignaud@mandriva.com>, François Micaux, Alain  Portal  <aportal@univ-montp2.fr>,
       Jean-Philippe    Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-
       luc.coulon@wanadoo.fr>,   Julien    Cristau    <jcristau@debian.org>,    Thomas    Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>,  Denis
       Barbier  <barbier@debian.org>,  David  Prévot <david@tilapin.org> et Jean-Paul Guillonneau
       <guillonneau.jeanpaul@free.fr>

       Cette traduction est une documentation libre ; veuillez vous reporter  à  la  GNU  General
       Public   License   version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  concernant  les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à debian-l10n-french@lists.debian.org ⟨⟩.