标签: windows batch-file path relative-path
我在同一个文件夹中有一个.bat和一个.exe文件。 我无法从.exe调用.bat文件,除非我将完整的绝对路径放入其中。 有没有办法不指定路径?
.bat
.exe
答案 0 :(得分:131)
尝试使用.exe调用%~dp0,如下所示:%~dp0MyProgram.exe。
%~dp0
%~dp0MyProgram.exe
%0包含被调用.bat文件的完整路径。
%0
~dp表示要获取驱动器和路径,包括尾随\。
~dp
\
答案 1 :(得分:19)
我通过在脚本开头使用pushd更改工作目录来解决此问题,并使用popd恢复脚本的末尾。这样,您始终可以假定工作目录与bat文件的位置相同。
pushd %~dp0 ProgramInSameFolderAsBat.exe popd