Variable d'environnement
2858332
31527809
2008-07-12T18:34:21Z
Linan
90223
/* Sur Windows */
En [[informatique]], les '''variables d’environnement''' sont des variables dynamiques utilisées par les différents processus d’un système d’exploitation ([[Microsoft Windows|Windows]], [[Unix]], etc.). Elles servent à communiquer des informations entre programmes qui ne se trouvent pas sur la même ligne hiérarchique, et ont donc besoin d'une convention pour se communiquer mutuellement leurs choix.
On parle aussi de [[variables d'environnement CGI]] pour un [[serveur HTTP]].
== Affichage de la liste des variables d'environnement ==
=== Sur Windows ===
La commande ''set'' sans aucun paramètre permet de lister la plupart des variables d’environnement.
Les variables %ERRORLEVEL%, %DATE%, %TIME%, %CD%, %RANDOM% ne sont pas affichées par la commande ''set'' (NB : le rôle de ces variables est expliqué dans les paragraphes suivants).
=== Sur Unix ===
* ''env'' (commande)
: La commande ''env'' sans aucun paramètre permet de lister les variables dites d’environnement.
: La variable ''$?'' n'est pas affichée par la commande ''env''. Cela correspond au code retour de la dernière commande effectuée.
* ''set'' (instruction du [[shell (informatique)|shell]])
: Dans les shell usuels d'Unix/linux, l'instruction ''set'' permet d'afficher à la fois les variables d'environnement et les autres variables.
== Modification d’une variable d’environnement ==
===Sur Windows ===
Pour modifier une variable d’environnement (attention, cela ne marche que sur le processus en cours)
''set path=%path% ;c:\WINDOWS\System32\wbem''
Pour modifier une variable d'environnement d'une manière permanente il faut:
-Modifier l'autoexec.bat avec la commande set sous windows 98.<br/>
-Ajouter ou modifier la clé de registre HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment ou HKEY_CURENT_USER\Environment\ sous windows 2000/xp/2003<br/>
Il est aussi possible de modifier les variables d'environnement sous l'objet système du panneau de configuration.
=== Sur Unix ===
Pour modifier une variable d’environnement (attention, cela ne marche que sur le processus en cours)
''PATH=$PATH :./''
# Si le processus en cours lance un autre processus (via un appel à la [[fork#Fonction fork dans UNIX|fonction ''fork'']]), ce nouveau processus [[Héritage (Informatique)|héritera]] des variables d’environnement mais pas des variables du shell. Une variable du shell peut devenir une variable d'environnement avec la commande ''export''.
# La commande ''env'' permet de lancer un processus en positionnant des valeurs d’environnement. Exemple :
''env LD_LIBRARY_PATH=/var/lib [[autotools#Script configure|./configure]]''
Pour modifier une variable d'environnement de façon permanente, on peut ajouter une ligne dans le fichier d'initialisation de son [[Shell (informatique)|shell]] (''~/.bashrc'' pour [[Bourne-Again shell|Bash]], ''~/.zshrc'' pour [[Zsh]])) pour assigner et exporter la variable. Voici un exemple minimal de ''~/.bashrc'' :
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
# User specific aliases and functions
export LANG=fr_CA.UTF8
Le script d'initialisation du shell est personnel à l'utilisateur.
Il est exécuté à chaque fois qu'on se connecte ( soit directement soit par ssh ) et à chaque fois qu'on ouvre une nouvelle console.
Pour que l'assignation de la variable profite à tous les utilisateurs, on peut l'ajouter (à condition d'avoir les droits) dans le fichier d'initialisation global du shell (''/etc/profile'' pour Bash)).
== Variable d’environnement windows ==
=== Paramètres liés au profil utilisateur ===
==== %ALLUSERSPROFILE% ====
Indique le répertoire du profil commun à tous les utilisateurs.
Exemple de valeurs :
‘’C:\Documents and settings\All Users’’
Attention : Ne pas confondre avec le profil par défaut
‘’C:\Documents and settings\Default User’’
==== %APPDATA% ====
Exemple de valeurs :
‘’C:\Documents and settings\Dupont\Application Data’'
Il contient les données d’application de l’utilisateur connecté
==== %HOMEPATH% ====
Exemple de valeur
‘’C:\Documents and settings\Dupont’’
==== %USERNAME% ====
%USERNAME% contient le nom de l’utilisateur connecté (exemple : Dupont).
==== %USERPROFILE% ====
%USERPROFILE% indique le chemin du répertoire contenant la [[base de registre|ruche HKEY_CURRENT_USER]] de l’utilisateur connecté (fichiers NTUSER.DAT et NTUSER.INI)
=== %CD% ===
La variable %CD% n'est pas affichée par la commande ''set'', elle donne le chemin du répertoire courant.
=== %COMPUTERNAME% ===
Contient le nom de l’ordinateur
=== %ComSpec% ===
Voir [[Session Manager Subsystem#Variables d'environnement|variables d’environnement positionnées par le gestionnaire de session (smss.exe)]]
=== %DATE% et %TIME% ===
Les variables %DATE% et %TIME% ne sont pas affichées par la commande ''set''. Elles donnent la date et l'heure.
=== %ERRORLEVEL% ===
La variable %ERRORLEVEL% n'est pas affichée par la commande ''set'', elle donne le code retour de la dernière commande exécutée. C'est l'équivalent de la variable $? d'Unix.
C'est une commande indispensable pour faire des [[Shell (informatique)|shell]] sophistiqués sous Windows (fichiers d'[[extension de fichier|extension]] [[.BAT]])
Deux exemples de code
''if errorlevel 2 goto no_such_file''
''IF ERRORLEVEL 2 SET CODE_ERREUR=2''
Voir [http://1100f.free.fr/Batchs/la_commande_errorlevel.htm Syntaxe du errorlevel dans un batch]
=== %FP_NO_HOST_CHECK% ===
Voir [[Session Manager Subsystem#Variables d'environnement|variables d’environnement positionnées par le gestionnaire de session (smss.exe)]]
=== %HOMEDRIVE% ===
Valeur par défaut
C:
=== %LOGONSERVER% et %USERDOMAIN% ===
Si l’utilisateur est connecté pour un [[domaine (informatique)|domaine]],
: %LOGONSERVER% indique le nom du contrôleur de domaine utilisé pour l’authentification, précédé de ‘’\\’’. Exemple :
‘’\\ctrl_dom’’
: %USERDOMAIN% indique le nom du domaine
Si l’utilisateur est connecté pour un groupe de travail (workgroup),
: %LOGONSERVER% et indique la même chose que %COMPUTERNAME%, précédé de ‘’\\’’. Exemple :
\\PCDupont
: %USERDOMAIN% indique la même chose que %COMPUTERNAME%
=== %NUMBER_OF_PROCESSORS% ===
Voir [[Session Manager Subsystem#Variables d'environnement|variables d’environnement positionnées par le gestionnaire de session (smss.exe)]]
=== %OS% ===
Voir [[Session Manager Subsystem#Variables d'environnement|variables d’environnement positionnées par le gestionnaire de session (smss.exe)]]
=== %PATHEXT% ===
Voir [[Session Manager Subsystem#Variables d'environnement|variables d’environnement positionnées par le gestionnaire de session (smss.exe)]]
=== Variable d’environnement dont le nom commence par PROCESSOR_* ===
Pour %PROCESSOR_ARCHITECTURE%, %PROCESSOR_IDENTIFIER%, %PROCESSOR_LEVEL%,%PROCESSOR_REVISION%, voir [[Session Manager Subsystem#Variables d'environnement|variables d’environnement positionnées par le gestionnaire de session (smss.exe)]]
=== %ProgramFiles% ===
Cette variable d’environnement indique le chemin du répertoire des programmes installés de Windows (voir [[Program Files]]).
Sa valeur par défaut est :
‘’C:\Program Files’’
La valeur de cette variable est paramétrée, dans la base de registre, par la variable ''ProgramFilesDir'' dans la clé HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion''.
=== %PROMPT% ===
Cette variable d'environnement permet de personnaliser l'invite affiché avant la saisie d'une commande.
Sa valeur par défaut est
$P$G
Elle peut contenir du texte à afficher combiné à des valeurs spéciales dont le code commence par le signe dollar "$".
{| class="wikitable" border="1"
! Code
! Description
|-----
| <tt>$P</tt> || Chemin courant ('''''P'''ath'')
|-{{ligne grise}}
| <tt>$N</tt> || Lecteur courant seulement
|-----
| <tt>$G</tt> || Caractère supérieur ">" ('''''G'''reater'')
|-{{ligne grise}}
| <tt>$L</tt> || Caractère inférieur "<" ('''''L'''ess'')
|-----
| <tt>$D</tt> || Date actuelle ('''''D'''ate'')
|-{{ligne grise}}
| <tt>$T</tt> || Heure actuelle ('''''T'''ime'')
|}
Pour plus d'information, taper "help prompt".
=== %RANDOM% ===
La variable %RANDOM% n'est pas affichée par la commande ''set'', elle génère un nombre [[pseudo-aléatoire]].
=== %SESSIONNAME% ===
Exemple de valeur
Console
=== %SystemDrive% ===
Valeur par défaut
‘’C:’’
=== %SystemRoot% ===
Cette variable d'environnement indique l'emplacement des fichiers systèmes.
Elle est paramétrée par la [[base de registre]] : valeur ''SystemRoot'' dans la clé ''HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion''.
==== Valeurs par défaut ====
La valeur par défaut est :
* ''C:\Windows'' sous Windows Vista et 2008
* ''C:\WINDOWS'' sous Windows XP et 2003.
* ''C:\WINNT''. Pour les versions précédentes de Windows NT (de [[Microsoft Windows NT 3.5x|Windows NT 3.5]] à [[Microsoft Windows 2000|Windows Server 2000]])
==== Variables d'environnement basées sur %SystemRoot% ====
A partir de ''%SystemRoot%'', d'autres variables d'environnement peuvent être positionnées. Pour ''%[[PATH#Sous Windows|PATH]]%'', ''%COMSPEC%'', ''%TEMP%'', ''%TMP%'', ''%WINDIR%'', voir [[Session Manager Subsystem#Variables d'environnement|Les variables d'environnement créées par le gestionnaire de session]]
=== Les 2 répertoires de fichiers temporaires ===
%TMP% et %TEMP%
Un dossier de fichiers temporaire se trouve aussi le répertoire suivant. (XP)
C:\Documents and Settings\nom_de_la_session\Local Settings\Temp
=== %WinDir% ===
Analogue à %systemRoot%
------------------------------------------------------
== Variables d’environnement Unix (ou linux) ==
Sous Unix et Linux, les shells utilisent deux types de variables, utilisant la même syntaxe :
* Des variables locales au shell,
* Des variables d'environnement transmises aux applications lancées par le shell.
Ces dernières sont accédées comme des variables locales et doivent être exportées avec la commande <tt>export</tt> (pour [[Bourne-Again shell|bash]]), ou utiliser la commande <tt>setenv</tt> (csh).
Exemple de variables d'environnement sous Unix
{{...}}
=== $? : le code retour ===
La variable ''$?'' n'est pas affichée par la commande ''env''. Cela correspond au code retour de la dernière commande effectuée.
=== $# : le nombre d'arguments ===
$# indique le nombre d'arguments.
=== $_ ===
La variable ''$_'' indique le nom du dernier argument traité par la dernière commande.
=== CFLAGS et CXXFLAGS pour la [[Compilateur|compilation]] ===
Voir [[CFLAGS]]
=== Répertoires $HOME, $PWD, $OLDPWD ===
*La variable $HOME contient le chemin absolu vers le répertoire personnel de l'utilisateur connecté.
*La variable $PWD contient le chemin absolu vers le répertoire courant (permet de savoir où on est dans l'arborescence).
*La variable $OLDPWD contient le chemin absolu vers le répertoire courant précédent (permet de savoir d'où on vient).
=== Infopath (pour [[Emacs]]) ===
Infopath est une variable d'environnement utilisé par l'[[Éditeur de texte]] [[Emacs]]. Il contient la liste des répertoires info.
=== $LANG et $LANGUAGE ===
==== Affichage des messages d'erreurs ====
La variable $LANG est utilisée par les différents programmes pour déterminer la langue des messages à afficher.
Par exemple :
a@localhost ~]LANG=fr ls fff
ls: fff: '''Aucun fichier ou répertoire de ce type'''
a@localhost ~]LANG=en ls fff
ls: fff: '''No such file or directory'''
Ces différentes traductions se trouvent dans les fichiers ''.mo'' des sous-répertoires de ''/usr/share/locale'' .
Il peut être intéressant de modifier cette variable pour obtenir un message d'erreur en anglais (par exemple, en exécutant la commande "''export LANG=C''"), puis de rechercher ce message d'erreur avec un [[moteur de recherche]] ([[google]] ou autres) ; l'intérêt est d'avoir une liste de pages plus volumineuses que pour le message d'erreur en français et d'espérer trouver un diagnostic plus précis.
==== Affichage de l'[[éditeur de texte]] [[vim]] ====
La variable $LANG sert aussi à [[vim]] pour déterminer l'encodage à utiliser. Supposons le fichier ''.txt'' contenant comme seule ligne 'été' encodée en [[UTF-8]]. Pour éditer ce fichier avec vi dans la konsole il faut poser 'export LANG=fr.UTF8' et s'assurer que l'encodage de la konsole soit fixée à UTF-8 ( Configuration->Encodage).
Si l'encodage de la konsole est fixé à [[ISO 8859-1]], vim affichera 'été'. Si la variable $LANG ne précise pas l'encodage [[utf-8]], par exemple $LANG=fr, mais que l'encodage de la konsole est à UTF-8, vim affichera 'été', mais la position du curseur ne suivra pas bien. En effet, bien que la konsole affiche trois caractères, vim en compte cinq (essayez d'aller à la fin de la ligne avec $, le curseur ira trop loin).
==== Comparaison avec Windows ====
Dans Windows, la langue se paramètre avec la base de registre, dans le HKEY_CURRENT_USER, plus exactement dans certaines des sous-clés de ''ControlPanel\international'' (l'outil pour le paramétrer est ''intl.cpl'').
=== $LD_LIBRARY_PATH ===
La variable $LD_LIBRARY_PATH contient une liste de répertoire, séparés par des : , où se trouvent les [[bibliothèque logicielle|bibliothèques]] qui ne sont pas installées dans les répertoires par défaut ( /usr/lib et /usr/local/lib n'ont pas à être indiqués dans $LD_LIBRARY_PATH ).
Lors de l'exécution d'une application liée dynamiquement à une bibliothèque, la bibliothèque est d'abord recherchée dans les répertoires par défaut, puis dans les répertoires énumérés dans la variable $LD_LIBRARY_PATH en ordre d'apparition.
Si la bibliothèque n'est pas trouvée, un message d'erreur semblable à celui-ci sera lancé lors de l'exécution :
le_nom_du_binaire: error while loading shared libraries: libXX.so.0: cannot open shared object file: No such file or directory
=== Variable de [[X Window System]] (pour l'[[environnement graphique]]) ===
* $DISPLAY
Exemple de valeur
'':0.0''
** Le premier chiffre est le numéro de serveur X11
** Le deuxième est le numéro de terminal
* $TERM
Exemple de valeur
[[xterm]]
=== Variables liées à [[GNOME]] (pour l'environnement graphique) ===
==== $COLORTERM ====
Exemple de valeur
: ''gnome-terminal''
==== $DESKTOP_SESSION ====
Exemple de valeur:
''default''
==== $DESKTOP_STARTUP_ID ====
A compléter
==== $GDM_XSERVER_LOCATION et $GDMSESSION ====
Voir [[GNOME Display Manager]]
==== $GNOME_DESKTOP_SESSION ====
Exemple de valeur
''Default''
==== $GNOME_KEYRING_SOCKET ====
Exemple de valeur
''/tmp/keyring-24TGGU/socket''
=== Variables liées à [[KDE]] (pour l'environnement graphique)===
A compléter
=== Variables liées à [[GIMP Toolkit|GTK]] ===
* $GTK_RC_FILES
=== $LC_ALL ===
Voir [[i18n]]
=== $POSIXLY_CORRECT ===
Si la variable d'environnement $POSIXLY_CORRECT est définie, les commandes [[Linux]] se conformeront à la norme [[POSIX]].
Par exemple, la commande linux [[grep]] se conformera à POSIX.2 si cette variable est définie.
Voir [[POSIX#Variable d'environnement POSIXLY_CORRECT]].
=== Variables liées à [[Secure shell|SSH]] ===
* $SSH_AGENT
* $SSH_AUTH_SOCK
=== $LOGNAME, $USER et $USERNAME ===
A compléter
=== $SHELL ===
$SHELL indique l'[[interpréteur]] shell utilisé par défaut. La valeur habituelle sous linux est
''/bin/bash''
Sur certaines versions d'Unix, c'est un shell plus primitif qui est installé par défaut.
Pour avoir la liste des shell sous Unix, voir [[:catégorie:Shell Unix]].
=== Autres variables ===
* [[PATH#Sous Unix/Linux|$PATH]]
* ''$SHLVL'', le niveau d'init, voir [[init#"init" de Unix System V (SysVinit)|init de Unix System V]]
* ''$LS_COLORS''
* ''$SESSION_MANAGER''
* ''$XAUTHORITY''
* ''$WINDOWID''
=== Les variables autres que celles d'environnement ===
Pour les variables internes, voir {{en}} [http://www.linux.com/guides/abs-guide/internalvariables.shtml|Internal Variables]
Il existe des variables qui ne font pas partie des variables d'environnement. Par exemple, sur la version [[Sarge]] de la [[Distribution Linux|distribution]] [[debian]], il peut y avoir :
* Variables liées au shell
** ''$BASH'', ''$BASH_VERSINFO'', ''$BASH_VERSION''
* ''$HISTFILE'', ''$HISTFILESIZE'' et ''$HISTSIZE'' : paramètres de l'historique des commandes shell
** ''$SHELLOPTS''
* ''$COLUMNS'' et ''$LINES' valeurs par défaut : 80 et 24 (c'est-à-dire 80 lignes et 24 colonnes)
* ''$DIRSTACK''
* ''$EUID'' ([[User identifier|UID]] effectif d'un processus)
: REMARQUE : Il ne faut pas utiliser cette variable pour déterminer quel était le login initial (Pour cela, il faut utiliser la commande ''who am i'', en n'oubliant pas les espaces! )
* ''$GROUPS''
* Variables en rapport avec l'architecture logicielle ou matérielle
** ''$HOSTTYPE'' ; exemple de valeur : ''[[i386]]''
** ''$MACHTYPE'' ; exemple de valeur : [[i386]]-[[Compatible PC|pc]]-linux-[[GNU|gnu]]
** ''$OSTYPE'' ; exemple de valeur : ''linux-gnu''
* [[Internal Field Separator|''$IFS'' Internal Field Separator]]
* ''$MAILCHECK'' ; valeur par défaut : 60
* ''$OPTERR'' et ''$OPTIND'' ; valeurs par défaut : 1
* ''$PIPESTATUS''
* ''$PPID'' Parent Process IDentifier
* Variables liées au ''prompt''
** ''$PROMPT_COMMAND''
** ''$PS1'', ''$PS2'' et ''$PS4''
== Variables d'environnement communes à Windows et Unix ==
=== <PATH> ===
{{Voir Wiktionnaire||path}}
La variable <PATH> contient la liste des répertoire(s) dans lesquels vont être recherchés les [[fichier exécutable|fichiers exécutables]].
==== Exemple ====
Vous placez un fichier exécutable ''fichier_ex'' dans ''/opt/toto/bin''.
Vous vous placez dans un répertoire quelconque de votre système (via la commande ''cd'').
Si vous tentez de taper ''fichier_ex'' dans la console (ou le terminal) il ne sera pas exécuté car ''/opt/toto/bin'' n'est pas dans le ''PATH''.
Par contre si vous tapez ''/opt/toto/bin/fichier_ex'' cela fonctionnera, mais c'est plutôt long à écrire.
Il est donc nécessaire d'ajuster la variable d'environnement PATH.
==== Sous Unix/Linux ====
===== Visualiser le PATH =====
''echo $PATH''
on peut aussi utiliser la commande
''printenv PATH''
===== Séparateur =====
Le séparateur est le deux point(:)
===== Modifier temporairement le PATH =====
Avec le shell [[Bourne-Again shell|bash]]
''export PATH=$PATH:/opt/toto/bin''
Cette modification n'est que temporaire (pour la session en cours)..
===== Modifier le PATH de manière permanente =====
Il faut donc rendre permanente la modification du PATH en mettant la ligne suivante dans le fichier ''~/.[[Bourne-Again shell|bash]]rc''.
''export PATH=$PATH:/opt/toto/bin''
===== Le piège du répertoire courant =====
Sous Unix, pour exécuter un fichier qui est dans le répertoire courant, on est en général obligé de préfixer la commande par "./", ce qui permet d'indiquer que le fichier est dans le répertoire courant.
Cette particularité étonne les utilisateurs qui ont l'habitude de [[Microsoft Windows|Windows]] (ou de l'ancien [[MS-DOS]]) où on peut appeler directement un programme qui est dans le répertoire courant.
Cependant, il s'agit là d'une mesure de sécurité : à titre d'exemple, si un intrus malveillant parvient à placer un programme néfaste nommé ''ls'' dans le répertoire courant, ce programme sera exécuté dès que vous souhaiterez lister le répertoire (au lieu de la commande ''ls'' se trouvant normalement dans le répertoire /bin/, qui lui se trouve dans le PATH, mais qui n'est modifiable que par l'[[Utilisateur root|administrateur du système]]).
Si malgré tout l'utilisateur souhaite retrouver cette "ergonomie" de Microsoft, il faut qu'il rajoute le chemin "./" dans son PATH :
''PATH=$PATH:./''
===== Le $PATH de base dans le profil =====
La valeur de base de $PATH, pour tous les login, est défini dans le profil : fichier [[Shell (informatique)|Shell]] ''/etc/profile''.
==== Sous Mac OS X ====
===== Visualiser le PATH =====
(En [[Bourne shell]])
''echo $PATH''
===== Séparateur =====
Le séparateur est le deux point (:)
===== Modifier temporairement le PATH =====
''export PATH="$PATH:/opt/toto/bin"''
Cette modification n'est que temporaire (pour la session en cours).
===== Modifier le PATH de manière permanente =====
Il faut rendre permanente la modification du PATH en rajoutant la ligne suivante dans le [[Profil utilisateur]] (c'est-à-dire le shell ''~/.profile'' ou ''~/.bash_profile'' selon le type de terminal vous utilisez).
''export PATH="$PATH:/opt/toto/bin"''
Il est aussi possible de modifier directement le PATH du fichier ''/etc/profile'' (il faut utiliser [[sudo]] ou être en [[root]]).
==== Sous Windows ====
===== Visualiser le PATH =====
Dans une invite de commande, lancez la commande :
''set path''
ou
''echo %PATH%''
===== Séparateur =====
Le séparateur est le caractère point-virgule: ";".
===== Modifier temporairement le PATH =====
Dans une invite de commande, utilisez
''set PATH=%PATH%;c:\opt\toto\bin''
Cette modification n'est que temporaire (pour l'invite de commande en cours).
===== Modifier le PATH de manière permanente =====
Deux manières sont possibles :
1- Il faut utiliser la modification de la variable d'environnement PATH dans l'onglet 'avancé' des propriétés du poste de travail.
2- Utiliser une commande MS-DOS (qui est plus pratique pour une utilisation dans un script). Voici un exemple d'utilisation :
-> Le but étant d'ajouter C:\Lotus\Notes à la variable d'environnement PATH de manière permanente.
''REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /d "%PATH%;C:\Lotus\Notes" /f''
Options de REG ADD<ref>[http://www.microsoft.com/technet/prodtechnol/windowsserver2003/fr/library/ServerHelp/820b0e5b-0371-404d-8a22-a255273d3289.mspx?mfr=true REG ADD sur le site Microsoft]</ref>
: /f (force) permet d'éviter que le système vous demande si vous être sûr de votre modification.
: /v (value) : indique la clé
: /d (data) : indique la valeur de la clé
'''NB :''' Il est nécessaire de redémarrer la machine pour le système prenne en compte la modification.
'''NB2 :''' Si vous exécutez à nouveau cette commande, alors après le redémarrage, vous aurez deux fois ";C:\Lotus\Notes" dans votre path!
===== Base de registre =====
La variable %PATH% est définie dans la base de registre, avec d'autres variables d'environnement définies par le [[Session Manager Subsystem|SMSS.exe (gestionnaire de session)]], très exactement c'est la valeur PATH dans
''HKEY_Local_Machine\SYSTEM\CurrentControlSet\[[Session Manager Subsystem#Variables d'environnement|Control\Session Manager\Environment]]''
==== Sous DOS (toutes versions) ====
Le PATH (chemin) est stocké dans la variable d'environnement PATH.
On peut la visualiser de deux façons :
Soit en tapant
PATH
Soit en tapant
SET PATH
Pour modifier cette variable d'environnement, il est possible d'entrer au choix :
Soit
PATH (nouveau chemin de recherche)
Soit
SET PATH=(nouveau chemin)
Attention : l'ancien chemin de recherche est perdu. Il est possible de spécifier plusieurs chemins de recherche en les séparant par des points virgules.
Pour supprimer tout chemin de recherche, il faut taper
SET PATH=
Pour fixer les chemins de recherche de façon permante, il faut placer le chemin de recherche dans le fichier [[autoexec.bat]] dans la racine du lecteur de lancement (A: pour la disquette, C: pour le disque dur).
=== <JAVA_HOME> ===
Cette variable d'environnement n'est définie que si [[Java (langage)|Java]] est installé sur l'ordinateur correspondant.
JAVA_HOME indique le répertoire contenant l'arborescence des fichiers nécessaires pour la [[machine virtuelle Java]] ([[classe (informatique)|classe]], [[bibliothèques logicielles|bibliothèques logicielles]]. ...etc...). Voir [[chargeur de classe Java]].
Pour le cas particulier de Windows, voir [[Session Manager Subsystem#Variables d'environnement|variables d’environnement positionnées par le gestionnaire de session (smss.exe)]]
== Réferences ==
<references/>
== Voir aussi ==
=== Articles connexes ===
* [[Environnement d'exécution]]
{{portail informatique}}
[[Catégorie:Unix]]
[[Catégorie:Microsoft Windows]]
[[bg:Променливи на средата]]
[[de:Umgebungsvariable]]
[[en:Environment variable]]
[[es:Variable de entorno]]
[[fi:Ympäristömuuttuja]]
[[it:Variabile d'ambiente]]
[[ja:環境変数]]
[[ko:환경 변수]]
[[pl:Zmienna środowiskowa]]
[[pt:Variável de ambiente]]
[[ru:Переменные среды]]