2012-06-05 16:19:06 +0000 2012-06-05 16:19:06 +0000
17
17

如何调用文件名中含有空格的程序?

我试着运行类似这样的命令行。start /max C:\Program files\foo\ba.exe -somearguments.

但我有个问题,命令行返回了一个类似The system cannot found the C:\Program file的错误信息,如果我把C:\Program files\foo\ba.exe放在引号周围,它只是在MAX模式下运行一个新的窗口命令行,而不是运行程序。

如何解决这个问题?

答案 (4)

15
15
15
2012-06-05 16:26:45 +0000

所有包含空格的文件名和路径必须加引号。

接下来,关于你的问题,不如把路径写成这样。

start /max /d"C:\Program files\foo\" ba.exe -somearguments
15
15
15
2012-06-05 16:24:44 +0000

发生这个错误是因为系统把你的命令解释为文件C:\Program,把file解释为你命令的参数。很明显,它没有找到文件Program,并返回了这个错误。

要解决这个问题,只需在带有空格字符的单词之间的路径上加入"",或者在整个路径上加入0x6&。

start /max C:\"Program files"\foo\ba.exe -somearguments

start /max "C:\Program files\foo\ba.exe" -somearguments
```。
4
4
4
2012-06-05 16:31:11 +0000

虽然用引号包裹路径是最简单、最清晰的阅读方式,但你也可以使用旧的DOS短名(自从DOS遵循8.3命名后,超过8个字符的文件名用~1截断)来命名文件。这些名字没有空格。你可以用DIR /X命令查看文件的简称。

1
1
1
2018-05-04 12:48:54 +0000

在Win10中,你可以试试这个。

start /max C:\Program%20files\foo\ba.exe -somearguments