我需要创建一个批处理文件,在Windows .cmd文件中启动多个控制台应用程序.这可以使用start命令完成.
但是,该命令中有一个路径.我还需要传递有空格的参数.这该怎么做?
例如批处理文件
start "c:\path with spaces\app.exe" param1 "param with spaces"
Andy.. 163
实际上,他的例子不起作用(虽然起初我认为它也会这样).根据Start命令的帮助,第一个参数是新创建的命令提示符窗口的名称,第二个和第三个参数应分别是应用程序及其参数的路径.如果你在应用程序的路径之前添加另一个"",它应该工作(至少它对我来说).使用这样的东西:
start "" "c:\path with spaces\app.exe" param1 "param with spaces"
您可以将第一个参数更改为您想要的新命令提示符的标题.如果它是创建的Windows应用程序,则不会显示命令提示符,并且标题无关紧要.
实际上,他的例子不起作用(虽然起初我认为它也会这样).根据Start命令的帮助,第一个参数是新创建的命令提示符窗口的名称,第二个和第三个参数应分别是应用程序及其参数的路径.如果你在应用程序的路径之前添加另一个"",它应该工作(至少它对我来说).使用这样的东西:
start "" "c:\path with spaces\app.exe" param1 "param with spaces"
您可以将第一个参数更改为您想要的新命令提示符的标题.如果它是创建的Windows应用程序,则不会显示命令提示符,并且标题无关紧要.
使用撇号转义路径是正确的,但start命令采用包含新窗口标题的参数.此参数由周围的撇号检测,因此不会执行您的应用程序.
尝试这样的事情:
start "Dummy Title" "c:\path with spaces\app.exe" param1 "param with spaces"