Puis-je modifier la variable d'environnement PATH dans Windows 7 sans redémarrer?

22

Est-il possible de modifier la variable d'environnement PATH (ou les variables en général) sur Windows 7 Exterprise (64 bits) et de la faire prendre effet dans PowerShell ou l'invite de commande ( cmd.exe) sans nécessiter de redémarrage?

Cela ne me dérange pas d'avoir à rouvrir le shell / invite, mais avoir à redémarrer c'est trop.

Je modifie actuellement les variables via Advanced Systems settings ->les variables d'environnement`.

Danielb
la source
MS décrit le problème avec tout ce qui dépend des services exécutés sous le compte système local , mais cela ne devrait affecter que les sessions PSExec . En outre, de nombreux programmes clients utilisant des variables d'environnement peuvent ne pas nécessiter de redémarrage ou de déconnexion / connexion utilisateur, tant qu'ils sont redémarrés après le changement EV. (vérifié avec VS2017)
Laurie Stearn

Réponses:

22

L'exigence n'est pas vraiment "doit redémarrer", c'est "doit se déconnecter / se reconnecter" - principalement pour que vos processus utilisateur actuels puissent détecter la modification.

Si tout ce qui vous intéresse est que les changements de variables prennent effet dans une fenêtre de commande ou un Power Shell, le démarrage d'un nouveau shell après avoir effectué lesdites modifications devrait être tout ce qui est nécessaire.

Quack Quichotte
la source
11
C'est bizarre de créer une nouvelle fenêtre de terminal / shell après avoir fait des changements, toujours utilisé pour fonctionner sur les versions précédentes de Windows, mais cela ne semble pas être suffisant sur Win7 :(
Danielb
Les programmes (dans mon cas, NUnit) liront souvent les nouveaux changements de chemin si vous les ouvrez et les fermez.
Matthew Lock
1
Si vous utilisez "Ouvrir la fenêtre de commande ici" dans l'explorateur, je peux voir le nouveau chemin avec echo% PATH% mais pas si je lance simplement cmd.exe
Glenn Lawrence
1
@GlennLawrence pour moi c'est le contraire: je vois mes changements si j'invoque cmddepuis le menu Démarrer (soit en le recherchant soit en utilisant la Run…fonction). Si je l'invoque depuis un fichier batch ou depuis le menu contextuel, je ne vois pas mes modifications.
Saulo Silva
Assurez-vous de redémarrer le processus de création de cmd après avoir modifié les variables d'environnement système. Tuer l'explorateur fait souvent l'affaire.
masterxilo
3

Dans mon Win7 (64 bits), la commande console

chemin = lecteur: \ dir;% chemin%

ajoute lecteur: \ dir au début du chemin de la console actuelle sans démarrer une nouvelle console. Aucune idée pourquoi votre Win7 devrait se comporter différemment. J'aimerais cependant savoir comment certains programmes s'ajoutent à la variable% path% pour chaque instance de la console.

Pour modifier manuellement le chemin d'accès de Windows 7, consultez: http://geekswithblogs.net/renso/archive/2009/10/21/how-to-set-the-windows-path-in-windows-7.aspx

TJGeezer
la source
2

J'ai résolu ce problème en choisissant l'invite de commande ou Windows PowerShell dans le menu Démarrer, en cliquant avec le bouton droit et en choisissant "Exécuter en tant qu'administrateur". Ensuite, la nouvelle fenêtre de commande reconnaîtra les modifications apportées à PATH, sinon ce n'est pas le cas. Je ne sais pas ce qui se passera après un redémarrage.

Rob
la source
Très bien, mais y a-t-il une différence si le compte est déjà administrateur?
Laurie Stearn