位置: 编程技术 - 正文

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)

  • 小规模纳税人月销售额超过15万
  • 税务硕士是什么学位类别
  • 出口退税计算公式 中华会计网校
  • 预缴增值税需要预缴附加税吗
  • 农产品普票进项税抵扣怎么做账
  • 股权转让1元转让
  • 明明申报了为什么显示没有申报
  • 销售毛利率算法
  • 房租租金收入都缴纳什么税金
  • 个体办税务登记需要带什么
  • 持有待售固定资产为什么不计提折旧
  • 计算本月应交增值税转账公式
  • 营改增医院增值税
  • 出租设备应计入什么科目
  • 企业安全生产费用提取标准 最新
  • 通行费进项抵扣条件
  • 建筑业预交的增值税
  • 电费专票抵扣需要发票吗
  • 关于纳税人取得的发票
  • 企业盈利后又亏损怎么算
  • 企业开普票和专票的税率一样吗
  • 金税盘问题
  • 金税盘全额抵扣分录
  • 应交税费未交增值税怎么计算
  • 电子承兑汇票怎么打印出来
  • 两万元大写金额报销单怎么写
  • 股权收购特殊性税务处理案例
  • 如何获取windows最高权限
  • 快递公司账务处理流程及方法
  • 外观设计专利费减
  • 临时股东大会的召开情形
  • 人工费没有发票年度汇算调增需要进行调帐处理吗
  • 无法启用网络发展
  • 电脑安全系统无法启动怎么办
  • ghost恢复方法
  • desktop病毒
  • Win11 Build 22000.282正式版推送: 附更新修复内容汇总
  • php的正则表达式
  • web服务器做什么用的
  • 生产储存剧毒化学品的单位应当设置
  • wordpress界面
  • 没有资质证书的公司可靠吗?
  • 以前年度应扣未扣支出专项申报表
  • oracleupdate关联表
  • cat 开源
  • 在php中,字符串有哪些表示形式
  • 原材料存货跌价准备会计分录
  • 所得税费用为什么不计入营业利润
  • day14-HTTP01
  • 长期待摊费用计提摊销的会计分录
  • 商业承兑汇票的流程
  • 如何在个人所得税app上修改扣缴义务人
  • 电子承兑被退回要重新背书怎么办
  • 退伍军人9000补助
  • 企业库存现金的限额是
  • 房地产企业土地增值税预缴
  • 企业被列入经营异常名录可以注销吗
  • 流动比率计算公式是年初还是年末
  • 快递费算不算运输费
  • 工会经费计提比例0.8%和2%有何区别
  • 折旧年限的最新规定 汽车
  • mysql5.7.19 winx64解压缩版安装配置教程
  • windows 2003 r2
  • win7怎么进行系统还原
  • Win10 TH2首个重要更新后应用商店依然存在问题
  • linux如何修改账户名
  • linux确认命令
  • linux rsyslogd
  • opengl绘制简单矩形代码
  • 【新功能】“回调特性”的使用教程:
  • bootstrap 下拉按钮
  • nodejs游戏开发
  • 数据结构分析时间复杂度
  • androidweb view
  • dos判断变量是否为空
  • Genymotion首次运行程序出现错误Installation error: INSTALL_FAILED_CPU_ABI_INCOMPATIBLE
  • android解压app
  • 生产者消费者的作用
  • 中国的消费税是怎么算的
  • 火车票是否出票查询
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设