在Windows 7(甚至XP)中,是否可以通过命令提示符在系统级别设置环境变量?我正在从一个升高的命令提示符运行。
当我使用set命令(set name=value)时,环境变量似乎只对命令提示符的会话有效。
在Windows 7(甚至XP)中,是否可以通过命令提示符在系统级别设置环境变量?我正在从一个升高的命令提示符运行。
当我使用set命令(set name=value)时,环境变量似乎只对命令提示符的会话有效。
当前回答
如果你通过SETX设置一个变量,你不能立即使用这个变量或它的变化。您必须重新启动希望使用它的进程。
使用下面的顺序在设置过程中直接设置它(对我来说,在设置全局变量后做一些init的东西的脚本中是完美的):
SET XYZ=test
SETX XYZ test
其他回答
如果你需要删除一个变量,你可以在http://barnyard.syr.edu/~vefatica上使用Vincent Fatica提供的SETENV。 不是最近的(1998年),但仍然在Windows 7 x64上工作。
如果你通过SETX设置一个变量,你不能立即使用这个变量或它的变化。您必须重新启动希望使用它的进程。
使用下面的顺序在设置过程中直接设置它(对我来说,在设置全局变量后做一些init的东西的脚本中是完美的):
SET XYZ=test
SETX XYZ test
XP支持工具(可以从XP光盘中安装)附带一个名为setx.exe的程序:
C:\Program Files\Support Tools>setx /?
SETX: This program is used to set values in the environment
of the machine or currently logged on user using one of three modes.
1) Command Line Mode: setx variable value [-m]
Optional Switches:
-m Set value in the Machine environment. Default is User.
...
For more information and example use: SETX -i
我认为Windows 7实际上附带了setx作为标准安装的一部分。
系统变量可以通过CMD和注册表设置 例如,reg查询“HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment”/v PATH
这里列出了所有常用的CMD代码和系统变量:通过CMD设置Windows系统环境变量。
打开CMD,输入Set
你会得到系统变量的所有值。
输入set java可以了解windows操作系统上安装的java的详细路径。
对于XP,我使用了一个叫做“RAPIDEE”(快速环境编辑器)的(免费/捐赠软件)工具,但是SETX对于Win 7来说已经足够了(我以前不知道这个)。