Posso modificare la variabile ambientale PATH in Windows 7 senza riavviare?


22

Esiste un modo per modificare la variabile di ambiente PATH (o le variabili in generale) su Windows 7 Exterprise (64 bit) e renderla effettiva in PowerShell o nel prompt dei comandi ( cmd.exe) senza richiedere un riavvio?

Non mi dispiace avere riaprire la shell / prompt, ma dover riavviare è troppo.

Attualmente sto cambiando le variabili tramite Advanced Systems settings ->Variabili d'ambiente`.


MS delinea il problema con qualcosa che si affida ai servizi in esecuzione con l'account di sistema locale , ma ciò dovrebbe interessare solo le sessioni PSExec . Inoltre, molti programmi client che utilizzano variabili di ambiente potrebbero non richiedere il riavvio o il logout / login dell'utente, a condizione che vengano riavviati dopo la modifica di EV. (verificato con VS2017)
Laurie Stearn l'

Risposte:


22

Il requisito in realtà non è "deve riavviare", è "deve disconnettersi / riconnettersi" - principalmente per i processi dell'utente corrente per prendere la modifica.

Se tutto ciò che ti interessa è che le modifiche alle variabili abbiano effetto in una finestra di comando o power shell, avviare una nuova shell dopo aver apportato tali modifiche dovrebbe essere tutto ciò che è necessario.


11
È strano creare una nuova finestra di terminale / shell dopo aver apportato modifiche sempre utilizzate per funzionare con le versioni precedenti di Windows, ma non sembra essere sufficiente su Win7 :(
Danielb

Anche i programmi (nel mio caso NUnit) leggeranno spesso le nuove modifiche del percorso se le apri e le chiudi.
Matthew Lock,

1
Se uso "Apri finestra di comando qui" in Explorer posso vedere il nuovo percorso con echo% PATH% ma non se eseguo solo cmd.exe
Glenn Lawrence

1
@GlennLawrence per me è il contrario: vedo le mie modifiche se invoco cmddal menu Start (o cercandolo o usando la Run…funzione). Se lo invoco da un file batch o dal menu di scelta rapida, non vedo le mie modifiche.
Saulo Silva,

Assicurati di riavviare il processo creando cmd dopo aver modificato le variabili di ambiente di sistema. Uccidere Explorer spesso fa il trucco.
Masterxilo,

3

Nel mio Win7 (64-bit) il comando console

path = unità: \ dir;% PATH%

aggiunge drive: \ dir all'inizio del percorso della console corrente senza avviare una nuova console. Non ho idea del perché Win7 dovrebbe comportarsi diversamente. Tuttavia, vorrei sapere come alcuni programmi si aggiungono alla variabile% path% per ogni istanza della console.

Per modificare manualmente il percorso di Windows 7, controllare: http://geekswithblogs.net/renso/archive/2009/10/21/how-to-set-the-windows-path-in-windows-7.aspx


2

Ho risolto questo problema scegliendo Prompt dei comandi o Windows PowerShell dal menu Start, facendo clic con il tasto destro e scegliendo "Esegui come amministratore". Quindi la nuova finestra di comando riconoscerà le modifiche a PATH, altrimenti non lo farà. Non so cosa accadrà dopo un riavvio.


Bene, ma c'è una differenza se l'account è già un amministratore?
Laurie Stearn,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.