正确引用为多个参数的cmd.exe
我想打电话
cmd /c "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.com" mysolution.sln /build "release|win32"
不幸的是,这不起作用,因为我得到的错误:'C:\ Program'不被识别为内部或外部命令,可操作的程序或batch file。
据我所知,我需要引用空格和引号|,但我只允许使用引号一次。
任何想法如何正确引用这个命令行调用?
注意""
在开始和结束!
运行一个程序并传递一个长文件名
cmd /c write.exe "c:\sample documents\sample.txt"
程序path中的空间
cmd /c ""c:\Program Files\Microsoft Office\Office\Winword.exe""
程序path中的空间+参数
cmd /c ""c:\Program Files\demo.cmd"" Parameter1 Param2
程序path中的空格+带空格的参数
cmd /k ""c:\batch files\demo.cmd" "Parameter 1 with space" "Parameter2 with space""
启动Demo1,然后启动Demo2
cmd /c ""c:\Program Files\demo1.cmd" & "c:\Program Files\demo2.cmd""
CMD.exe(命令shell)
空格用于分隔参数。 在你的情况下, C:\ Program成为参数。 如果您的文件path包含空格,请添加双引号。 然后cmd会将其识别为单个参数。
文件名或目录名空间是可怕的。
正确的语法是在每个包含空格的目录名称中加双引号
cmd / c C:\ Program Files \“Microsoft Visual Studio 9.0 \ Common7 \ IDE \ devenv.com mysolution.sln / build”release | win32“