Comment utiliser les variables d’environnement Windows CMD
Il est facile d’ajouter ou de modifier une variable d’environnement avec l’invite de commande (CMD), mais en supprimer une est beaucoup plus compliqué. Voici quelques façons différentes de le faire.
Sommaire
Comment ajouter ou modifier une variable d’environnement
Tout d’abord, vous devez lancer l’invite de commande, ou CMD, en tant qu’administrateur. Cliquez sur Démarrer, tapez « cmd » dans la zone de recherche, puis cliquez sur « Exécuter en tant qu’administrateur ».
Noter: Toute variable d’environnement utilisateur peut être définie ou modifiée dans une fenêtre d’invite de commande standard, mais la modification des variables d’environnement à l’échelle du système nécessite une invite de commande élevée.
Il existe deux manières distinctes de définir des variables d’environnement.
Définition temporaire d’une variable d’environnement
Le premier utilise la commande set. Set définit une variable d’environnement exclusivement dans le processus dans lequel elle a été définie – en d’autres termes, la variable ne fonctionne que dans la fenêtre que vous avez ouverte ou dans le script qui la contient.
Voici un exemple : supposons que vous souhaitiez créer une variable d’environnement nommée LifeAnswerVar et définir la valeur sur 42. La commande serait set LifeAnswerVar=42
.
Pendant que cette fenêtre est ouverte, LifeAnswerVar aura la valeur 42.
Lorsqu’il est fermé, la variable d’environnement et sa valeur sont supprimées.
La même méthode fonctionne si vous souhaitez modifier temporairement une variable système Windows existante. Tout ce que vous avez à faire est de substituer la variable système que vous souhaitez modifier à la place de LifeAnswerVar et la valeur que vous souhaitez attribuer à la place de 42.
Par exemple, si vous vouliez déplacer le dossier TMP vers C:Example Folder, vous entreriez la commande set TMP=C:"Example Folder"
.
La première ligne, set TMP
, affiche la valeur actuelle de TMP. La deuxième ligne attribue une nouvelle valeur à TMP. La troisième ligne confirme qu’il a changé.
Définition permanente d’une variable d’environnement
La deuxième méthode utilise setx. Setx définit les variables d’environnement Windows de manière permanente. Ils persistent entre les fenêtres et entre les redémarrages et sont écrits dans le registre Windows. Ces variables d’environnement peuvent être définies pour un utilisateur spécifique ou pour une utilisation à l’échelle du système.
La commande setx ExVar1 Tomato /m
créera une nouvelle variable d’environnement nommée ExVar1 et lui attribuera la valeur « Tomate ». L’argument /m spécifie que la nouvelle variable doit être à l’échelle du système, pas seulement pour l’utilisateur actuel.
Utilisez exactement la même commande pour modifier une variable d’environnement existante, en remplaçant ExVar1 par le nom de la variable que vous souhaitez modifier.
Noter: Si vous utilisez setx pour modifier une variable et set pour afficher la valeur de la variable, set n’affichera pas la bonne valeur tant qu’une nouvelle fenêtre d’invite de commande ne sera pas ouverte.
Si vous souhaitez ajouter ou modifier une variable d’environnement utilisateur, omettez simplement l’argument /m de la commande.
Comment supprimer une variable d’environnement
Supprimer une variable d’environnement est un peu plus difficile que d’en ajouter ou de la modifier.
Noter: Comme pour l’ajout d’une variable, toute variable d’environnement utilisateur peut être supprimée dans une fenêtre d’invite de commande normale, mais la suppression d’une variable d’environnement à l’échelle du système nécessite une invite de commande élevée.
Suppression temporaire d’une variable d’environnement
Si vous souhaitez supprimer temporairement une variable d’environnement pour le processus en cours, comme un script, une fenêtre PowerShell ou une fenêtre d’invite de commande, vous pouvez utiliser la commande set. Tout ce que vous avez à faire est de n’attribuer aucune valeur à la variable.
Par exemple, que se passe-t-il si vous avez la définition de variable ExVar1=Tomato
dans les variables d’environnement à l’échelle du système, mais vous vouliez l’ignorer pour un processus particulier ? Vous pouvez taper set ExVar1=
dans l’invite de commande ou incluez cette ligne dans votre script. La variable sera définie sur rien pendant l’exécution du script ou jusqu’à ce que vous ouvriez une nouvelle fenêtre d’invite de commande.
Suppression définitive d’une variable d’environnement
La suppression permanente d’une variable d’environnement est un peu plus complexe — vous devez utiliser reg
pour le faire.
Avertissement: Reg est la version en ligne de commande de l’Éditeur du Registre. Vous devez procéder avec prudence – une faute de frappe pourrait entraîner la suppression accidentelle de quelque chose d’important. Cela ne fait jamais de mal non plus de sauvegarder la partie du registre que vous modifiez.
Les variables d’environnement des utilisateurs individuels sont stockées dans HKEY_CURRENT_USEREnvironment
. Les variables d’environnement à l’échelle du système sont stockées ailleurs, dans HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment
.
Utilisons le ExVar1=Tomato
Exemple. La variable d’environnement ExVar1 a été définie à l’échelle du système, ce qui signifie qu’elle se trouve dans le répertoire HKEY_LOCAL_MACHINE plutôt que dans le répertoire HKEY_CURRENT_USER. Plus précisément, le chemin d’accès à la sous-clé est :
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironmentExVar1
Noter: Ce chemin contient un espace. Chaque fois qu’il y a un espace dans un chemin entré dans une interface de ligne de commande, vous devez utiliser des guillemets autour du chemin, sinon, il est extrêmement probable qu’il ne s’exécutera pas correctement.
Maintenant, nous devons utiliser le reg delete
commande pour le supprimer. Gardez à l’esprit que vous devrez remplacer votre nom de variable par ExVar1 dans la commande ci-dessous.
reg delete "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment" /f /v ExVar1
Il y en a beaucoup là-bas, alors décomposons-le un peu.
- reg delete — définit l’application (reg) et la commande (delete) que nous utilisons
"HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironment"
– Indique à reg delete où chercher la clé- /f – Indique à reg delete de supprimer la clé sans demander de confirmation
- /v – Indique à reg delete qu’il recevra une sous-clé spécifique à supprimer
- ExVar1 — Le nom de la sous-clé que nous voulons supprimer
La suppression d’une variable d’environnement pour un utilisateur individuel est exactement la même que la suppression d’une variable à l’échelle du système, sauf que le chemin sera différent. Si ExVar1 était une variable d’environnement utilisateur, la commande pour la supprimer serait :
reg delete HKEY_CURRENT_USEREnvironment /f /v ExVar1
Si la commande de suppression de la variable d’environnement a réussi, vous devriez voir « L’opération s’est terminée avec succès » dans l’invite de commande.
Chaque fois que vous supprimez une variable d’environnement comme celle-ci, vous devez redémarrer explorer.exe. Vous pouvez redémarrer Explorer.exe manuellement ou vous pouvez simplement redémarrer l’ensemble de votre ordinateur. L’un ou l’autre fonctionnera et les modifications devraient prendre effet immédiatement après le redémarrage.