Why is the Powershell Environment PATH different to the System Environment PATH?

后端 未结 2 962
情歌与酒
情歌与酒 2021-02-02 07:52

I\'m having this weird situation :

My user\'s and system\'s PATH variable is different than the PATH in powershell.

When I do :

PS C:\\$env:path         


        
相关标签:
2条回答
  • 2021-02-02 08:39

    The change might be "delayed", so try one or more of these solutions:

    • Log off and on again;
    • Task Manager > Restart "Windows Explorer" (explorer.exe)
    • Restart your launcher app (launchy, SlickRun, etc)
    • Reboot

    Explanation:
    Powershell will inherit the environment of the process that launched it (which depends on how you launch it). This is usually the interactive shell (explorer.exe). When you modify the environment from computer properties, you modify the environment of explorer.exe, so if you launch powershell from explorer.exe, (for example from the start menu) you should see the new environment.

    However, if you launch it from something else (say a cmd.exe shell that you already had opened), then you won't since that process was launched under the old environment.

    In other words: be careful how you are launching things.

    0 讨论(0)
  • 2021-02-02 08:54

    In my case, I installed an app that incorrectly added itself to the PATH by creating a powershell profile that would override $env:PATH and blow out the existing configuration every time I started powershell.

    Check if you have profile at USER\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1 and if it's doing anything fishy like setting $env:PATH.

    0 讨论(0)
提交回复
热议问题