批处理(.bat)文件中使用相对路径
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
批处理(.bat)⽂件中使⽤相对路径
⼀般来说,批处理⽂件处理相对路径的时候,起始位置是bat⽂件所在的⽬录,⽐如在D:\XX⽬录下执⾏bat⽂件,所有相对⽬录的操作都会以D:\XX下执⾏。
但是有些命令需要管理员权限,右键选择以管理员⾝份运⾏时后,起始位置则为C:\Windows\system32,这时候往往不是我们所想要的,
⼀种解决解决办法是在批处理的⾏⾸加⼀句"cd D:\XX”进⼊该⽬录,以修改其当前位置,但这样需要在批处理⽂件中加⼊绝对路径,如果把bat⽂件移动到其它位置就⽆法使⽤了,此时⼀种更好的⽅式是⽤"cd /d %~dp0”代替"cd D:\XX”。
综上所述,在写bat⽂件的时候,不管是否需要⽤到管理员权限,最好在⾏⾸加⼀句"cd /d %~dp0",以统⼀⽂件的起始⽬录。
例如,Auto.bat处于⽂件夹d:\my_bat\下,以下为Auto.bat的内容
cd /d %~dp0
start MDF-API\FeedServer\FeedServerV1_3.exe
代表启动“d:\my_bat\MDF-API\FeedServer\FeedServerV1_3.exe”这个程序。