Variable d’environnement

Définition, exemples et bonnes pratiques

À retenir

  • Elles servent à configurer un logiciel sans toucher à son code.
  • Elles sont accessibles par tous les programmes lancés par l'utilisateur.
  • Elles sont transmises de manière descendante (un programme transmet ses variables à ceux qu'il lance).

Une variable d’environnement est une petite information stockée par le système d'exploitation qui sert de référence aux programmes en cours d'exécution. C'est un peu comme un pense-bête global : au lieu de demander à chaque logiciel de deviner où se trouvent vos documents ou quel est votre nom d'utilisateur, le système l'écrit une fois dans ces variables pour que tout le monde puisse les consulter.

Étymologie

Le terme se compose de « variable », car la donnée stockée peut être modifiée, et d'« environnement », car elle définit le contexte technique dans lequel un logiciel fonctionne. Ce concept a été généralisé par le système Unix dans les années 1970 avant de devenir un standard sur Windows (DOS) et macOS.

Exemples d'usage

  • PATH : la liste des dossiers où le système cherche les programmes à lancer.
  • HOME (ou USERPROFILE) : le chemin vers le dossier personnel de l'utilisateur.
  • LANG : indique au logiciel dans quelle langue il doit afficher ses menus.

Cas d'usage

On les utilise principalement pour la configuration système et le déploiement d'applications. Elles permettent de définir des paramètres qui changent selon l'ordinateur (comme l'accès à une base de données) sans avoir à modifier le code source du programme lui-même.

Bonnes pratiques

Il est recommandé d'écrire leurs noms en MAJUSCULES pour les distinguer des variables internes d'un programme. Pour la sécurité, évitez de stocker des mots de passe en clair dans des variables d'environnement permanentes, car elles peuvent parfois être lues par d'autres processus ou s'afficher dans des journaux de logs.

Synonymes

variable système paramètre d'exécution

Antonymes

variable locale constante codée en dur

Conseil

Si vous débutez en programmation, apprenez rapidement à manipuler la variable PATH. C'est la cause numéro 1 des erreurs de type 'commande introuvable' lors de l'installation de nouveaux langages comme Python, Java ou Node.js.

Questions fréquentes

Quelle est la différence avec une variable de programmation classique ?

Une variable classique n'existe qu'à l'intérieur de votre programme, alors qu'une variable d'environnement appartient au système et peut être lue par n'importe quel logiciel.

Est-ce que les changements sont définitifs ?

Si vous modifiez une variable dans un terminal (invite de commande), le changement ne dure que le temps de la session. Pour un changement définitif, il faut passer par les réglages système.

Pourquoi mon programme ne trouve pas ma commande ?

C'est souvent parce que le dossier contenant le programme n'a pas été ajouté à la variable d'environnement PATH.