具有相对路径和关闭命令提示符的批处理文件

时间:2017-02-14 06:35:53

标签: batch-file

我试试这段代码:

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

但是,没有任何事情发生。那么,有人可以给我信息,有什么不对吗?

1 个答案:

答案 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>