是否有任何命令行工具可用于在 Windows 中编辑环境变量?

Pio*_*ost 15 windows command-line environment-variables

是否有任何命令行工具可用于在 Windows 中编辑环境变量?

如果这是智能工具就好了,例如:

  • 当添加一些路径以假设 PATH 变量并且该路径已经存在时,不应将此条目加倍。
  • 应该可以在其他路径之前/之后或以特定顺序(第一个、第 7 个、最后一个等)插入到 PATH 变量的新路径。
  • 应该可以仅更改变量值的一部分(在 PATH 的情况下是所有路径列表中的给定路径)。

最后但并非最不重要的 -我希望我的更改在会话之间保持不变,所以简单的 SET 是不可能的......

有一个非常好的 GUI 工具,叫做路径编辑器,我需要这样的东西,但对于命令行。

Tre*_*reb 17

我不知道有什么工具可以做到这一点,但也许您可以使用以下reg命令:

reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path
Run Code Online (Sandbox Code Playgroud)

读取当前路径,以及

reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /d "newPath" /f
Run Code Online (Sandbox Code Playgroud)

写下你的新值。

您需要管理员权限才能在 HKLM 中访问权限。如果这是一个问题,请考虑修改用户特定的路径设置 HKCU\Environment


bob*_*mcr 7

如果您需要一种通用方法来设置任何环境变量并使更改保持不变,那么setx.exe将是要使用的工具。但是,它无法完成您所要求的“智能”事情......

setx.exe 包含在 Windows Vista 或更高版本中;如果您使用的是较早版本的 Windows,则可以使用上面的下载链接来获取它。


Joe*_*oey 5

对于当前程序,有path

显示或设置可执行文件的搜索路径。

PATH [[drive:]path[;...][;%PATH%]
PATH ;
Run Code Online (Sandbox Code Playgroud)

键入PATH ;以清除所有搜索路径设置并直接cmd.exe在当前目录中搜索。

键入PATH不带参数以显示当前路径。包含%PATH%在新路径设置中会导致旧路径附加到新设置。

但是,这与set PATH.

要使环境变量持久化,您必须编辑注册表或使用setx.


Pio*_*ost 0

Windows Server 2003 资源工具包工具中的路径管理器 (pathman.exe) 是我能找到的最接近的匹配项。它已在 NT 资源工具包中提供。