我有这种奇怪的情况:
我的用户和系统的PATH变量与powershell中的PATH不同。
当我这样做时:
PS C:\$env:path
C:\Windows\System32\WindowsPowerShell\v1.0\;c:\oldpath
然而这是不正确的,它看起来像是停留在我系统的一些旧PATH变量上,所以我所做的任何udpates都没有改变这个变量(我每次更改后都会重新开始测试)
为什么会这样?我是否必须为powershell设置PATH变量?
答案 0 :(得分:36)
此更改可能会“延迟”,因此请尝试以下一种或多种解决方案:
<强>解释强>
Powershell将继承启动它的进程的环境(这取决于你如何启动它)。这通常是交互式shell(explorer.exe)。从计算机属性修改环境时,修改explorer.exe的环境,因此如果从explorer.exe启动powershell(例如从开始菜单),您应该看到新环境。
但是,如果你从其他东西(比如你已经打开的cmd.exe shell)启动它,那么你就不会在旧环境下启动该进程。
换句话说:小心你是如何发射的。
答案 1 :(得分:1)
就我而言,我安装了一个应用程序,该应用程序通过创建将覆盖$env:PATH
的powershell配置文件错误地将自身添加到PATH,并且每次启动powershell时都会吹干现有配置。
检查您是否在USER\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
上拥有个人资料,以及是否在进行设置$env:PATH
方面的工作。