En informatique, les variables d’environnement sont des variables dynamiques utilisées par les différents processus d’un système d’exploitation (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.
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).
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’’
Exemple de valeurs :
‘’C:\Documents and settings\Dupont\Application Data’'
Il contient les données d’application de l’utilisateur connecté.
Exemple de valeur
‘’C:\Documents and settings\Dupont’’
%USERNAME% contient le nom de l’utilisateur connecté (exemple : Dupont).
%USERPROFILE% indique le chemin du répertoire contenant la ruche HKEY_CURRENT_USER de l’utilisateur connecté (fichiers NTUSER.DAT et NTUSER.INI).
La variable %CD% n'est pas affichée par la commande set, elle donne le chemin du répertoire courant.
Contient le nom de l’ordinateur.
Voir variables d’environnement positionnées par le gestionnaire de session (smss.exe).
Les variables %DATE% et %TIME% ne sont pas affichées par la commande set. Elles donnent la date et l'heure.
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 sophistiqués sous Windows (fichiers d'extension .BAT).
Deux exemples de code
if errorlevel 2 goto no_such_file IF ERRORLEVEL 2 SET CODE_ERREUR=2
Voir Syntaxe du errorlevel dans un batch.
Voir variables d’environnement positionnées par le gestionnaire de session (smss.exe).
Valeur par défaut
C:
Si l’utilisateur est connecté pour un domaine,
‘’\\ctrl_dom’’
Si l’utilisateur est connecté pour un groupe de travail (workgroup),
\\PCDupont
Voir variables d’environnement positionnées par le gestionnaire de session (smss.exe).
Voir variables d’environnement positionnées par le gestionnaire de session (smss.exe).
Voir variables d’environnement positionnées par le gestionnaire de session (smss.exe).
Pour %PROCESSOR_ARCHITECTURE%, %PROCESSOR_IDENTIFIER%, %PROCESSOR_LEVEL%, %PROCESSOR_REVISION%, voir variables d’environnement positionnées par le gestionnaire de session (smss.exe).
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.
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 "$".
Code | Description |
---|---|
$P | Chemin courant (Path) |
$N | Lecteur courant seulement |
$G | Caractère supérieur ">" (Greater) |
$L | Caractère inférieur "<" (Less) |
$D | Date actuelle (Date) |
$T | Heure actuelle (Time) |
Pour plus d'information, taper « help prompt
».
La variable %RANDOM% n'est pas affichée par la commande set, elle génère un nombre pseudo-aléatoire compris entre 0 et la 15e puissance de 2 (32768).
Valeur par défaut
‘’C:’’
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.
La valeur par défaut est :
À partir de %SystemRoot%, d'autres variables d'environnement peuvent être positionnées. Pour PATH%, %COMSPEC%, %TEMP%, %TMP%, %WINDIR%, voir Les variables d'environnement créées par le gestionnaire de session.
%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
Analogue à %SystemRoot%
Exemple :
‘’C:\Windows’'