什么会导致[Environment] :: SetEnvironmentVariable无声地失败?

时间:2010-11-28 01:18:29

标签: powershell

我正在运行这个ps命令:

PS C:\Windows\system32> [Environment]::SetEnvironmentVariable( "Path"
, $env:Path + "; D:\Program Files (x86)\Java\bin"
, System.EnvironmentVariableTarget]::Machine )

我作为管理员开始使用PowerShell。对我来说,该命令应该将“; D:\ Program ...”字符串添加到当前机器的Path变量中。然而,它没有,也没有失败。我究竟做错了什么?

2 个答案:

答案 0 :(得分:3)

这对我有用,不需要重启控制台

PS C:\Users> $env:Path = "$($env:Path);c:\Scripts"
PS C:\Users> $env:Path
%SystemRoot%\system32\WindowsPowerShell\v1.0\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System
32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Microsoft Application Virtualization Client;C:\Program Files (x86)\Co
mmon Files\Roxio Shared\DLLShared\;c:\Scripts

这仅适用于当前会话。如果需要保留更新的路径变量,则需要在问题中使用该方法并重新启动shell。

答案 1 :(得分:0)

啊,之后不久找到了答案:您必须重新启动powershell 才能看到任何已修改的环境变量。