Chu*_*k L 4 windows windows-7 environment-variables
在我的 Windows 7 计算机上,我创建了一些自定义用户环境变量(右键单击计算机 > 属性 >“高级系统设置”>“环境变量...”>“新建...”用于“...的用户变量” ) 但是当我在命令提示符下回显它们时,它似乎无法识别。例如,这就是我所拥有的:
UTILS_HOME C:\myUtils
UTILS_WILDFLY %UTILS_HOME%\wildflyUtils
Run Code Online (Sandbox Code Playgroud)
我将两者都添加到我的用户变量中的 PATH 变量中,如下所示:
PATH %UTILS_HOME%;%UTILS_WILDFLY%
Run Code Online (Sandbox Code Playgroud)
当我回显 PATH 时,我得到了这个:
C:\mytils;%UTILS_WILDFLY%
Run Code Online (Sandbox Code Playgroud)
我希望它会扩展 UTILS_WILDFLY 但不会。现在,如果我将 UTILS_WILDFLY 的名称更改为 JBOSS_8,当我回显路径时,它将被扩展。我已经尝试了几个名称进行测试,但不明白为什么有些会扩展而有些则不会。当它们不展开时,我无法在命令行上访问该文件夹中的脚本。
是否有一些我不知道的命名环境变量的规则,或者这是它的工作方式,我必须反复试验,直到找到一个有效的方法?
尝试不同的名称时没有错别字。我为变量创建了名称,并将其剪切并粘贴到 PATH 变量中以排除这种情况。
问题是您正在使用递归扩展,即 PATH 引用 UTILS_WILDFLY,它本身引用 UTILS_HOME。
递归扩展并不总是有效;大概这意味着它不受支持,所以不能保证它会工作 - 这意味着你不应该使用它 - 但在实践中它有时确实有效,因此会造成混淆。
具体来说,在 Windows 7 上,当且仅当递归扩展中间的变量 (UTILS_WILDFLY) 出现在注册表变量列表中的扩展变量 (PATH) 之前,它才起作用。碰巧的是,环境变量是按字母顺序排列的。
在你的情况下,
UTILS_WILDFLY > PATH,所以这不起作用。
JBOSS_8 < PATH,就是这样。
PATI 不起作用,但 PATG 会起作用。
| 归档时间: |
|
| 查看次数: |
1898 次 |
| 最近记录: |