Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows命令行:无法运行变量作为其路径一部分的命令_Windows_Batch File_Windows 10_Environment Variables - Fatal编程技术网

Windows命令行:无法运行变量作为其路径一部分的命令

Windows命令行:无法运行变量作为其路径一部分的命令,windows,batch-file,windows-10,environment-variables,Windows,Batch File,Windows 10,Environment Variables,我觉得我错过了一些明显的东西,但我就是看不到。我打开了一个cmd窗口,下面是我运行的内容: set QTDIR32=C:\Qt\5.10.1\msvc2015 %QTDIR32%\bin\qmake.exe -v C:\Qt\5.10.1\msvc2015\bin\qmake.exe是可执行工具的有效路径。 预期:工具的输出。 观察到: “C:\Qt\5.10.1\msvc2015”未被识别为内部或外部 命令、可操作程序或批处理文件 在命令的不同部分尝试了不同的引号组合;已尝试启动%QTDIR

我觉得我错过了一些明显的东西,但我就是看不到。我打开了一个
cmd
窗口,下面是我运行的内容:

set QTDIR32=C:\Qt\5.10.1\msvc2015
%QTDIR32%\bin\qmake.exe -v
C:\Qt\5.10.1\msvc2015\bin\qmake.exe
是可执行工具的有效路径。
预期:工具的输出。
观察到:

“C:\Qt\5.10.1\msvc2015”未被识别为内部或外部 命令、可操作程序或批处理文件

在命令的不同部分尝试了不同的引号组合;已尝试
启动%QTDIR32%\bin\qmake.exe-v
-它将在资源管理器中打开“C:\Qt\5.10.1\msvc2015”文件夹

echo%QTDIR32%
打印预期输出


我遗漏了什么?

始终在路径上使用双引号

set "QTDIR32=C:\Qt\5.10.1\msvc2015"
"%QTDIR32%\bin\qmake.exe" -v

双引号的原因并不总是因为路径之间的空格,而是消除了实际批处理中不需要的空格。双引号总是一个好主意。

要不要解释一下反对票的原因?@Mofi:很公平,但正如我在问题中所说的,它从来不是批处理文件。我打开了
cmd.exe
,手工输入了这些命令。然后抄下来贴在这里。这里不需要这样做,因为路径没有空格,而且根据设置
set
命令也不需要这样做。让我试试你的建议。这样做了,谢谢(引用调用
set
)。当我调用
set
时,我开始认为我的路径尽头有一个游离的空间。是的,因此引用:)我现在看到了你的智慧:)