位置: 编程技术 - 正文

DOS批处理中%cd%与%~dp0的区别详解(dos批处理命令大全)

编辑:rootadmin

推荐整理分享DOS批处理中%cd%与%~dp0的区别详解(dos批处理命令大全),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:dos批处理实例,dos常用命令与批处理文件,dos批处理中执行bat,批处理 cd /d,dos批处理实例800例,dos 批处理,dos批处理中执行bat,dos批处理实例800例,内容如对您有帮助,希望把文章链接给更多的朋友!

问题描述

假设我们要在批处理a.bat里调用执行批处理b.bat,b.bat需要知道b.bat的当前位置,并执行run.exe,如下:

那么现在能不能成功执行run.exe呢?

问题分析

%cd%和%~dp0都能用来表示当前目录,但是他们在不同的使用场景下,功能却不相同:

%cd%代表的是当前工作目录(current working directory,variable); %~dp0代表的是当前批处理文件所在完整目录(the batch file's directory,fixed)。

我们来看看下面的例子:

直接运行d.bat,结果为

直接运行c.bat,结果为

从上面的结果可以看出:

执行d.bat时,当前工作目录为d.bat所在目录; 执行c.bat时,当前工作目录为c.bat所在目录,即使在调用d.bat后,该工作目录依旧是c.bat所在目录。DOS批处理中%cd%与%~dp0的区别详解(dos批处理命令大全)

问题解决

让我们再来看看问题描述中提及的问题——能不能成功执行run.exe呢?

答案是:不能。“ %cd%run.exe ”表示的是“ C:run.exe ”,并非“ C:programrun.exe ”。那么如何更改呢?

有两种方案:

问题延伸

上面的解决方案中plan A通过更改当前目录来解决该问题,可以这里面也存在另外一个问题,让我们看下面的例子:

现在e.bat和f.bat不在同一个盘符了,从e.bat切换当前工作目录到f.bat直接使用cd是不行的,必须要使用:

这个地方容易疏忽,切记不要犯错。

问题总结

我们来重申下%~dp0和%cd%的区别, %cd%和%~dp0都能用来表示当前目录,但是他们在不同的使用场景下,功能却不相同:

%cd%代表的是当前工作目录(current working directory,variable); %~dp0代表的是当前批处理文件所在完整目录(the batch file's directory,fixed)。

从目前我们的使用情况来看,尽量使用%~dp0,不建议使用%cd%,有其他需求除外。

总结

标签: dos批处理命令大全

本文链接地址:https://www.jiuchutong.com/biancheng/371630.html 转载请保留说明!

上一篇:通过拖曳获取文件信息的bat代码分享(拖曳对象时用的命令)

下一篇:dos命令行choice命令使用详解(dos命令/s)

  • 非上市公司股权转让涉及哪些税
  • 免税收入进项税额转出比例结转法
  • 滑准税是指关税的税率
  • 其他权益工具投资科目编码
  • 转让股权取得的收益是调增还是调减
  • 顺流交易为什么不管是否出售
  • 服装批发零售交什么税
  • 投资收益如何做账
  • 自产自销产品如何入库存
  • 资产损失申报方式
  • 减税必须通过开户银行吗
  • 公允价值变动增加在借方还是贷方
  • 递延所得税怎么产生
  • 派发现金红利怎么知道有没有
  • 酒店垃圾处理费标准怎么确定
  • 给客户购买礼品怎么记账
  • 旅游开发公司税率
  • 公司分期付款购车账务处理
  • 华为鸿蒙harmonyos官网4.0
  • 补交以前年度的城建税会计分录
  • win7纯净版系统官网
  • createrectrgn
  • 营业外收入的会计要素
  • uniapp的css库
  • 布鲁克斯岭
  • 企业应交税费的会计分录
  • 数据结构考试内容
  • yii2组件的理解
  • java web购物系统
  • php安装oci8
  • HTTP加密/HTTPS工作过程
  • vue中的icon
  • lpstat命令
  • 员工多了怎么管理办法
  • 固定资产折旧如何进行会计处理
  • python中如何删除文件
  • 航天金税服务费怎么交
  • 对于投资者而言购买债券型理财产品面临的最大风险来自
  • 清算时存货是否要交税
  • 买新车检测
  • 公司会计日常工作内容
  • 现金日记账的登记证据有
  • 初级会计计划成本例题
  • 企业管理理费包括哪些
  • 股权转让溢价部分会计分录
  • 财务收入支出明细表
  • 互联网企业招商手册
  • 更换公司新公章流程
  • 暂估入库一直没有发票
  • 海关进口代理公司名称
  • 开发票时怎么操作收款人 复核人 开票人?
  • 购销合同印花税2023年新规定
  • 财政补助结转余额在借方还是贷方
  • 租房买的中央空调怎么用
  • sql server 判断数据是否存在
  • mysql数据库隐藏指定内容
  • win10预览版21277
  • freebsd使用手册
  • nec笔记本电脑开机屏幕没反应
  • win8系统如何连接wifi
  • windows7版本支持功能最少的
  • mac如何打开程序菜单
  • win8创建我的电脑
  • win7旗舰版远程链接登录不上
  • win10qq经常卡
  • Linux安装完mysql后提示错误无法登陆mysql怎么办?
  • 手机摇一摇插件
  • cocos2dx 2.2.2
  • python里模块
  • javascript typeof id==='string'?document.getElementById(id):id解释 原创
  • jquery树形菜单
  • python怎么多进程
  • unity3d怎么用
  • JavaScript lastIndexOf方法入门实例(计算指定字符在字符串中最后一次出现的位置)
  • jqgrid分页pager
  • 北京市国家税务局发票查询平台
  • 登录电子税务局显示时间错误如果解决
  • 四川税收总额
  • 换电员工作时间自由吗
  • 中央财经大学法学院
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设