Isz*_*szi 7 windows windows-registry environment-variables batch-file
我%PATH%对注册表中的变量进行了一些更改。现在,我希望看到应用这些更改,而无需注销、重新启动或重新加载 Explorer。有没有办法做到这一点?
我宁愿通过某种可以放在.BAT文件末尾的命令来执行此操作,并且不想使用除全新安装操作系统随附的工具之外的任何工具。这需要与 Windows XP SP3 最低限度地兼容,并且应该一直工作到 Windows 7 x64 和 Server 2008 R2。
@echo off
echo.
echo Refreshing PATH from registry
:: Get System PATH
for /f "tokens=2*" %%A in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path') do set syspath=%%B
:: Get User Path
for /f "tokens=2*" %%A in ('reg query "HKCU\Environment" /v Path') do set userpath=%%B
:: Set Refreshed Path
set PATH=%userpath%;%syspath%
echo Refreshed PATH
echo %PATH%
Run Code Online (Sandbox Code Playgroud)
``
ConEmu 中的任务命令参数使用 /k 开关启动 C:\Windows\System32\cmd.exe 以运行上面的 refreshpath.cmd 然后保持不变。这会更新路径并使控制台保持打开状态。
C:\Windows\System32\cmd.exe /k refreshpath.cmd
如果您尝试在 Windows 命令 shell 中使用路径变量的新值,您所需要做的就是关闭命令 shell 窗口并打开一个新窗口。新的命令 shell 将加载更新的路径变量。
所以我认为你原来问题的答案在某种程度上取决于你到底想在哪里看到改变生效......是否有一些特定的东西不适合你?
| 归档时间: |
|
| 查看次数: |
55397 次 |
| 最近记录: |