因此,我的路径变量(System->Adv Settings->Env Vars->System->PATH)设置为:
C:\Python26\Lib\site-packages\PyQt4\bin;
%SystemRoot%\system32;
%SystemRoot%;
%SystemRoot%\System32\Wbem;
%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;
C:\Python26\;
C:\Python26\Scripts\;
C:\cygwin\bin;
"C:\PathWithSpaces\What_is_this_bullshit";
"C:\PathWithSpaces 1.5\What_is_this_bullshit_1.5";
"C:\PathWithSpaces (2.0)\What_is_this_bullshit_2.0";
"C:\Program Files (x86)\IronPython 2.6";
"C:\Program Files (x86)\Subversion\bin";
"C:\Program Files (x86)\Git\cmd";
"C:\Program Files (x86)\PuTTY";
"C:\Program Files (x86)\Mercurial";
Z:\droid\android-sdk-windows\tools;
Run Code Online (Sandbox Code Playgroud)
虽然,显然,没有换行符。
请注意包含的行PathWithSpaces- 第一个没有空格,第二个有空格,第三个有一个空格,后跟一个括号。
现在,注意这个批处理文件的输出:
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\>vcvars32.bat
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin>"C:\Program Files (x86
)\Microsoft Visual Studio 9.0\Common7\Tools\vsvars32.bat"
Setting environment for using Microsoft Visual Studio 2008 x86 tools.
\What_is_this_bullshit_2.0";"C:\Program was unexpected at this time.
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin> set …Run Code Online (Sandbox Code Playgroud) 由于某种原因,某些环境变量在系统变量中的“PATH”变量中使用时不会扩展。
例如,%SystemRoot%可以正常工作,但%WinDir%不能。%ProgramFiles%并且%ProgramFiles(x86)%也不起作用。
显然我知道我可以使用完整路径而不是变量,但这不是重点。
有任何想法吗?
这是屏幕截图/示例:
在我的 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 变量中以排除这种情况。