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

Linux                                             13 août 2020                                        ENVIRON(7)