如何从注册表更新Windows PowerShell会话环境变量
发布时间:2020-12-13 20:54:52 所属栏目:Windows 来源:网络整理
导读:这可能是一个简单的问题,但我找不到正确的答案。如何在当前的Windows PowerShell会话中更新环境变量,而不关闭当前的Windows PowerShell会话?到现在为止,当我说,从控制面板修改PATH env var系统,我必须关闭当前会话并打开一个新的会话,这样变量被刷新
这可能是一个简单的问题,但我找不到正确的答案。如何在当前的Windows PowerShell会话中更新环境变量,而不关闭当前的Windows PowerShell会话?到现在为止,当我说,从控制面板>修改PATH env var系统,我必须关闭当前会话并打开一个新的会话,这样变量被刷新,或发出一个SetEnviromentVariable这是麻烦的….
我来自linux世界,所以我正在寻找类似source命令的东西…
环境在流程启动时被填充,这就是为什么您需要重新启动该过程。
您可以通过从注册表读取来更新环境。也许有如下脚本: function Update-Environment { $locations = 'HKLM:SYSTEMCurrentControlSetControlSession ManagerEnvironment','HKCU:Environment' $locations | ForEach-Object { $k = Get-Item $_ $k.GetValueNames() | ForEach-Object { $name = $_ $value = $k.GetValue($_) if ($userLocation -and $name -ieq 'PATH') { Env:Path += ";$value" } else { Set-Item -Path Env:$name -Value $value } } $userLocation = $true } } (另) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows – Vim作为默认编辑器
- windows-7 – 使用Powershell查询schtasks
- windows-server-2003 – 我可以从RAID-1升级到RAID-5吗?
- windows-server-2008 – 为什么Windows 2008在内存已满之前
- Windows Home Basic和域或LDAP
- 批处理文件 – Dos批处理:写入没有行结尾的文件
- 单元测试 – 如何在实际项目中的Microsoft Dynamics AX 201
- Windows Phone 7 – TiltEffect和LongListSelector
- windows-server-2008 – Excel文件始终以只读模式通过WebDA
- .net – 如何轻松更新interop dll?