38

我遇到了这种奇怪的情况:

我的用户和系统的 PATH 变量与 powershell 中的 PATH 不同。

当我做 :

PS C:\$env:path
C:\Windows\System32\WindowsPowerShell\v1.0\;c:\oldpath

然而这是不正确的,它看起来像是卡在我系统的一些旧 PATH 变量上,所以我在它上面完成的所有 udpates 都没有改变这个变量(每次更改后我都会重新启动以进行测试)。

为什么会这样?我是否必须为 powershell 设置一个 PATH 变量?

4

2 回答 2

62

更改可能会“延迟”,因此请尝试以下一种或多种解决方案:

  • 注销并重新登录;
  • 任务管理器 >重新启动“Windows 资源管理器” (explorer.exe)
  • 重新启动您的启动器应用程序(launchy、SlickRun 等)
  • 重启

说明:
Powershell 将继承启动它的进程的环境(这取决于您如何启动它)。这通常是交互式 shell (explorer.exe)。当您从计算机属性修改环境时,您会修改 explorer.exe 的环境,因此如果您从 explorer.exe 启动 powershell(例如从开始菜单),您应该会看到新环境。

但是,如果您从其他东西启动它(比如您已经打开的 cmd.exe shell),那么您不会因为该进程是在旧环境下启动的。

换句话说:小心你如何启动事物。

于 2009-02-13T18:16:31.783 回答
3

就我而言,我安装了一个应用程序,该应用程序通过创建一个 powershell 配置文件错误地将自身添加到 PATH 中,该配置文件将$env:PATH在我每次启动 powershell 时覆盖并破坏现有配置。

检查您是否有个人资料,USER\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1以及它是否在做任何可疑的设置$env:PATH

于 2020-04-23T18:08:56.007 回答