|
|||||||
|
|
ENVIRONSection: Manuel de l administrateur Linux (5)Updated: 25 juillet 2003 Index Return to Main Contents NOMenviron - Environnement de l'utilisateur.SYNOPSISextern char **environ; DESCRIPTIONLa variable environ pointe sur un tableau de chaînes que l'on nomme `environnement'. (Cette variable doit être déclaré 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 :
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).
PRINTER ou LPDEST indiquent l'imprimante à utiliser. Voir lpr(1). NOTESIl 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 AUSSIlogin(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).TRADUCTIONChristophe Blaess, 1996-2003.
Index | ||||||
|
|
|
Home :: Copyright :: Privacy :: Credits :: Get a free Linuxinfor Email Account Document on this page is part of "Linuxinfor Man Pages in HTML Format: man5". See Index Page for more info about Authorship and Copyright. 1999-2008 Linuxinfor.com. No rights reserved. |