Provided by:
manpages-fr_1.67.0-1_all 
NOM
environ - Environnement de l’utilisateur.
SYNOPSIS
extern char **environ;
DESCRIPTION
La variable environ pointe sur un tableau de chaînes que l’on nomme
« environnement ». (Cette variable doit être déclarée dans les
programmes utilisateurs, mais elle est présente dans unistd.h si le
fichier d’en-tête provient de libc4 ou libc5, ou encore de glibc si la
variable _GNU_SOURCE est définie.) Ce tableau de chaînes de caractères
qui est fourni à exec(3) quand un processus démarre. Par convention ces
chaînes ont 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é (dans les programmes de style
Système V).
HOME Le répertoire de login d’un utilisateur, mis en place par
login(1) depuis le fichier des mots de passe passwd(5).
LANG Le nom du lieu à utiliser pour les configurations locales, s’il
n’est pas écrasé par LC_ALL ou d’autres variables comme
LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_MONETARY, LC_NUMERIC,
LC_TIME, cf. locale(5).
PATH Une liste de préfixes 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 utilisé par certains shells pour
connaître le répertoire destination d’une commande cd, MANPATH
utilisé par man(1) pour trouver les pages de manuel, etc...)
PWD Le répertoire de travail actuel, renseigné par certains shells.
SHELL Le nom de fichier du shell à la 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 textes
(comme less(1)).
EDITOR/VISUAL
L’application préférée de l’utilisateur pour éditer des textes.
BROWSER
L’utilitaire préféré pour examiner des URLs. Une suite de noms
de navigateurs séparés par des deux-points. Voir
http://www.catb.org/~esr/BROWSER/ .
D’autres noms peuvent être inscrits dans l’environnement par la
commande export avec la syntaxe « nom=valeur » sous sh(1), ou par la
commande setenv avec csh(1). Des arguments peuvent aussi être insérés
dans l’environnement lors d’un exec(2).
Un programme C peut manipuler l’environnement en utilisant les
fonctions getenv(), putenv(), setenv(), et unsetenv().
Remarquez que le comportement de nombreux programmes ou routines de
bibliothèque est influencé par la présence, ou par la valeur de
certaines variables d’environnement. En voici quelques exemples :
Les variables LANG, LANGUAGE, NLSPATH, LOCPATH, LC_ALL, LC_MESSAGES,
etc. influencent la localisation.
TMPDIR modifie le préfixe de chemin d’accès des fichiers crées par
tmpnam() et consort, les répertoires temporaires de sort(1) ou d’autres
programmes.
LD_LIBRARY_PATH, LD_PRELOAD et les autres variables LD_* modifient le
comportement du chargeur/éditeur de liens dynamique.
POSIXLY_CORRECT oblige certains programmes ou routines à respecter
scrupuleusement le standard POSIX.
Le comportement de malloc(3) est influencé par les variables MALLOC_*.
La variable HOSTALIASES fournit le nom du fichier d’alias consulté par
gethostbyname().
TZ et TZDIR gèrent les informations sur les fuseaux horaires utilisées
par tzset(3) et donc par les fonctions comme ctime(), localtime(),
mktime(), strftime(). Voir tzselect(1).
TERMCAP donne des indications sur la manière de traiter le 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. Voir lpr(1).
Etc.
NOTES
Il est clair qu’il y a ici un risque concernant la sécurité. De
nombreuses commandes système peuvent être induites en erreur par un
utilisateur qui fournirait des valeurs particulières 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 par des variables d’environnement avec le même
nom en majuscule. Ainsi on peut employer CC pour sélectionner un
compilateur C (et de même MAKE, AR, AS, FC, LD, LEX, RM, YACC, etc.).
Toutefois dans certains cas, ces variables fournissent des paramètres à
certains programmes plutôt qu’un nom d’utilitaire. Ainsi il existe
MORE, LESS, ou GZIP. De telles utilisations sont considérées comme des
erreurs et doivent être évitées dans les nouveaux programmes. Les
auteurs de gzip par exemple, devraient penser à renommer leur option
GZIP_OPT.
VOIR AUSSI
login(1), sh(1), bash(1), csh(1), tcsh(1), execve(2), clearenv(3),
exec(3), getenv(3), putenv(3), setenv(3), unsetenv(3), locale(5).
TRADUCTION
Christophe Blaess, 1996-2003.