Que sont les variables d'environnement ?
Les variables d'environnement contiennent des valeurs liées à l'environnement actuel, comme le système d'exploitation ou les sessions utilisateur.
Path
L'une des plus connues s'appelle PATH
sous Windows, Linux et Mac OS X. Elle spécifie les répertoires dans lesquels se trouvent les programmes exécutables sur la machine qui peuvent être lancés sans connaître et en tapant tout le chemin du fichier sur la ligne de commande. (Ou dans Windows, le dialogue Exécuter dans le menu Démarrer ou
+R). Sous Linux et Mac OS X, il contient généralement tous les répertoires bin
et sbin
pertinents pour l'utilisateur actuel. Sous Windows, il contient au moins les répertoires C:\Windows
et C:\Windows\system32
- c'est pourquoi vous pouvez exécuter calc.exe
ou notepad.exe
depuis la ligne de commande ou le dialogue Exécuter, mais pas firefox.exe
. (Firefox est situé dans C:\Program Files\Mozilla Firefox
. Pour savoir comment inclure Firefox, allez sur ici .)
Par exemple, en tapant calc
(le .exe
peut être omis) dans la ligne de commande sur Windows, vous lancerez la calculatrice Windows.
* Vous pouvez ajouter le support d'extensions de fichiers autres que .exe
en éditant %PATHEXT%
.
Autre
D'autres variables peuvent indiquer aux programmes quel type de terminal est utilisé (TERM
sur Linux/Mac OS X), ou, sur Windows, où se trouve le dossier Windows (par exemple, %WINDIR%
est C:\Windows
).
Création de nouvelles variables d'environnement
Sous Windows, Linux et Unix, il est possible de créer de nouvelles variables d'environnement, dont les valeurs sont ensuite mises à la disposition de tous les programmes au lancement.
Vous pouvez utiliser cette fonction lorsque vous écrivez des scripts ou des programmes qui sont installés ou déployés sur plusieurs machines et que vous avez besoin de référencer des valeurs spécifiques à ces machines. Bien qu'un effet similaire puisse être obtenu en utilisant des paramètres de configuration spécifiques au programme, il est plus facile de le faire en utilisant une variable d'environnement si plusieurs programmes doivent accéder à la même valeur.
  ;
Windows
GUI
Open Control Panel » System » Advanced » Environment Variables
.
Tapez control sysdm.cpl,,3
dans la boîte de dialogue Exécuter (
+R) et cliquez sur Environment Variables
.
Pour modifier les variables utilisateur, vous pouvez également taper
Faites un clic droit sur (Mon) ordinateur et cliquez sur Propriétés, ou appuyez simplement sur
+Rupture.
Il existe de nombreuses autres façons d'accéder au même endroit, par exemple en tapant “variables d'environnement” dans la boîte de recherche du menu/écran de démarrage, etc.
Les variables d'environnement dans Windows sont séparées en valeurs spécifiques à l'utilisateur et à la machine ou au système. Vous pouvez consulter et modifier leurs valeurs à cet endroit. Leurs valeurs actuelles au lancement sont mises à la disposition de tous les programmes.
Il existe également un Éditeur rapide d'environnement , qui permet de définir et de modifier les variables d'environnement dans Windows sans avoir besoin d'approfondir les paramètres du système. Un autre programme open source pour Windows avec lequel l'environnement de chemin peut être édité très facilement est Path Editor .
Ligne de commande
Format
Les variables d'environnement dans Windows sont indiquées par des signes de pourcentage (%) entourant le nom :
%name%
echo
Pour afficher la valeur d'une variable d'environnement dans cmd.exe
, tapez echo %name%
.
C:\>echo %USERPROFILE%
C:\Users\Daniel
set
Pour créer/régler une variable, utilisez set varname=value
:
C:\>set FunnyCatPictures=C:\Users\Daniel\Pictures\Funny Cat Pictures
C:\>set FunnyCatPicturesTwo=%USERPROFILE%\Pictures\Funny Cat Pictures 2
Pour ajouter/ajouter une variable, utilisez set varname=value;%varname%
:
C:\>set Penguins=C:\Linux
C:\>set Penguins=C:\Windows;%Penguins%
C:\>echo %Penguins%
C:\Windows;C:\Linux
Les variables d'environnement ainsi définies sont disponibles pendant (le reste de) la durée du processus d'invite de commande dans lequel elles sont définies, et sont disponibles pour les processus qui sont lancés après la définition des variables. Pour créer/régler une variable de manière permanente, utilisez setx varname "value"
:
C:\>setx FunnyCatPictures "C:\Users\Daniel\Pictures\Funny Cat Pictures"
[Restart CMD]
C:\>echo %FunnyCatPictures%
C:\Users\Daniel\Pictures\Funny Cat Pictures
Contrairement à set
, il n'y a pas de signe égal et la valeur doit être mise entre guillemets si elle contient des espaces. Notez que les variables peuvent se développer en une chaîne avec des espaces (par exemple, %PATH%
devient C:\Program Files
), il est donc préférable d'inclure des guillemets autour des valeurs qui contiennent des variables.
Vous devez ajouter manuellement setx
aux versions de Windows antérieures à Vista. Windows XP Service Pack 2 Support Tools
List of Windows Environment Variables
Ici est une liste de variables d'environnement par défaut , qui sont intégrées dans Windows. Quelques exemples sont : %WINDIR%
, %SystemRoot%
, %USERPROFILE%
, et %APPDATA%
. Comme la plupart des noms dans Windows, ils ne sont pas sensibles à la casse.
  ;
Dérivés Unix (FreeBSD, GNU / Linux, OS X)
Les variables d'environnement dans Linux sont préfixées par un signe dollar ($) comme $HOME ou $HOSTNAME. De nombreuses variables connues et standard sont écrites en majuscules pour le signifier. Gardez à l'esprit que les noms de variables sont sensibles à la casse, ce qui signifie que $User et $USER n'ont aucun rapport du point de vue du shell. Les dérivés Unix
définissent des variables à l'échelle du système dans des scripts shell situés principalement dans le dossier /etc
, mais des valeurs spécifiques à l'utilisateur peuvent être données à ces variables dans des scripts situés dans le dossier home (par exemple /etc/profile
, $HOME/.bash_profile
). Le fichier .profile
dans le dossier home est un endroit commun pour définir les variables utilisateur.
Réglage variables
Ces fichiers sont des scripts shell réguliers et peuvent contenir plus que de simples déclarations de variables d'environnement. Pour définir une variable d'environnement, utilisez export
. Pour afficher vos variables d'environnement actuellement définies dans un terminal, exécutez env
.
La commande export
est une façon standard de définir des variables. La syntaxe est très intuitive. Le résultat est identique pour ces deux lignes, mais la première alternative est préférable dans le cas où la portabilité vers le shell Bourne pré-POSIX est nécessaire.
var=value; export var
export var=value
Le shell C et ses descendants utilisent une syntaxe complètement différente ; là, la commande est setenv
.
Voir le projet de documentation Linux, Path HOWTO pour une discussion plus approfondie sur ce sujet.
Peut-être contrairement à ce que l'on croit généralement, OS X est plus “Unix” que Linux. En plus des fichiers déjà mentionnés, $PATH peut être modifié dans ces fichiers :
/etc/paths
contient tous les répertoires par défaut qui sont ajoutés au chemin, comme /bin
et /usr/sbin
.
- Tout fichier dans
/etc/paths.d
- communément utilisé par les installateurs pour rendre les fichiers exécutables qu'ils fournissent disponibles depuis le shell sans toucher aux fichiers de configuration du système ou spécifiques à l'utilisateur. Ces fichiers contiennent simplement un chemin d'accès par ligne, par exemple /Programmes/Mozilla/Calendrier/bin.
  ;
Liens externes :
Variables d'environnement dans XP
Outils de support pour Windows XP Service Pack 2 (Inclut setx
)
Variables d'environnement dans Windows Vista et Windows 7
Ajout d'exécutables à la boîte de dialogue Exécuter
Conseils pour Mac OSX - Définition des variables d'environnement
TLDP : Chemin d'accès