我试试这段代码:
start /d "D:\test\CONTOH\DATA\QGIS2\bin\" qgis.bat
基于: Bat file to run a .exe at the command prompt
但是,我想成为相对的道路,就像这样:
start /d %~dp0\DATA\QGIS2\bin\qgis.bat
基于: relative path in BAT script
但是,没有任何事情发生。那么,有人可以给我信息,有什么不对吗?
答案 0 :(得分:1)
打开命令提示符窗口并运行start /?
。这将输出命令 START 的帮助,应使用此命令读取该命令以获取有关其选项的知识。
在命令提示符窗口call /?
中运行并阅读输出帮助页面以了解%~dp0
。批处理文件(参数0)的驱动器和路径始终以反斜杠结束。因此,不要在将其与另一个字符串连接时添加额外的反斜杠。
第一个双引号字符串由 START 解释为新窗口标题栏中显示的新控制台窗口的标题。因此,如果要启动一个根本没有打开控制台窗口的GUI应用程序,最好总是指定一个标题字符串,它也可以是""
之类的空字符串。
start "Running QGIS2" /D "%~dp0DATA\QGIS2\bin" qgis.bat
也可以在批处理文件中使用此命令行:
start "Running QGIS2" /D"%~dp0DATA\QGIS2\bin" qgis.bat
此处的在目录中开始,如/D"%~dp0DATA\QGIS2\bin"
所定义,根据命令 START 的帮助指定100%正确作为一个参数字符串。
但Windows命令解释器也接受第一个变量,只有选项/D
没有任何文件夹路径,下一个参数字符串"%~dp0DATA\QGIS2\bin"
在分隔空间是开始在目录中的文件夹路径
第一个变量只有/D
作为一个参数字符串而"%~dp0DATA\QGIS2\bin"
作为一个参数字符串,与第二个变体相比更容易阅读,其中/D"%~dp0DATA\QGIS2\bin"
只是一个参数字符串。< / p>