我对DOS启动命令有疑问。 我已经读过这个话题了: 使用DOS“start”命令将参数传递给已启动的程序 Using the "start" command with parameters passed to the started program
但我的问题有点不同。
我遇到了这个问题:我需要传递需要引用的路径。
例如,如果路径没有引号,则可以正常工作:
启动“”app.exe -option c:\ myapp \ myfile.txt
但如果路径有双引号则不起作用。
我的BATCH文件中有这一行:
启动“”myapp.exe -option%mypath%
当%mypath%包含双引号(名称中包含空格或其他字符的路径)时,start命令会返回非常奇怪的结果。
由于 桑德罗
答案 0 :(得分:3)
通常情况下,使用带引号的参数不是问题,但如果您的app-path也有引号,则会出现问题。
然后您需要添加额外的CALL
语句。
start "" app.exe -option c:\myapp\myfile.txt - Works
start "" app.exe -option "c:\myapp\myfile.txt" - Works
start "" "app.exe" -option c:\myapp\myfile.txt - Works
start "" "app.exe" -option "c:\myapp\myfile.txt" - Don't works
start "" CALL "app.exe" -option "c:\myapp\myfile.txt" - Works
答案 1 :(得分:1)
这可能有所帮助,但这是一种方式的方法,可能需要稍作修改才能满足您的需求。
这个想法是:
抱歉,我此时无法获得更优雅的东西。