myprogram.cmd
已经在PATH路径中;
myprogram.cmd
使用%~dp0
确定所在文件夹;
我已将@echo %~dp0
包含在myprogram.cmd
中以进行调试;
当我从任何地方调用myprogram.cmd
时,它都可以正常工作,并显示myprogram.cmd
所在的文件夹;
当我调用hg extdiff -p myprogram.cmd
时,它不起作用,显示类似于c:\Users\Username\AppData\Local\Temp\extdiff.3n8op2\
的内容。
这是hgrc
文件的相关部分:
[extensions]
hgext.extdiff =
我做错了什么?%~dp0
不应该返回批处理文件的驱动器和路径吗?我应该使用什么代替?我需要对Mercurial存储库应用特殊配置吗?将myprogram.cmd
的完整路径传递给hg extdiff -p
不是一个选项,除非它自动完成。
myprogram.cmd
时,它能够完美地工作,并显示myprogram.cmd
所在的文件夹’。 - Andriy Mdp0如何找到路径?这比你所解释的更为详细:即使%0只是dp0仍然可以检测到它的路径。 - utapyngomyprogram.cmd
,如果从cmd中启动了myprogram.cmd
,%