BAT脚本中的相对path
这是我的USB驱动程序上我自己的程序文件夹:
Program\ run.bat bin\ config.ini Iris.exe library.dll etc.
我想用run.bat来启动我的Iris.exe
我不能使用这个:F:/Program/bin/Iris.exe就像是一个快捷方式,因为有时它不会给我F驱动程序名(E,G)
我需要写入bat文件才能像魅力一样工作? 我在BAT文件中试过:
˝\bin\Iris.exe˝
它不工作:(
在你的batch file中使用这个:
%~dp0\bin\Iris.exe
%~dp0
parsing为批处理脚本所在文件夹的完整path。
您可以使用下面的代码获取所有必需的文件属性:
FOR %%? IN (file_to_be_queried) DO ( ECHO File Name Only : %%~n? ECHO File Extension : %%~x? ECHO Name in 8.3 notation : %%~sn? ECHO File Attributes : %%~a? ECHO Located on Drive : %%~d? ECHO File Size : %%~z? ECHO Last-Modified Date : %%~t? ECHO Parent Folder : %%~dp? ECHO Fully Qualified Path : %%~f? ECHO FQP in 8.3 notation : %%~sf? ECHO Location in the PATH : %%~dp$PATH:? )
我发现%CD%
给出了脚本被调用的path,而不是脚本的path,但%~dp0
会给出脚本本身的path。
你应该可以使用当前目录
“%CD%” \ BIN \ Iris.exe
要么bin\Iris.exe
(没有引导斜杠 – 因为这意味着从根开始)
或\Program\bin\Iris.exe
(完整path)