dos批处理中%~dp0%的说明

news/2024/11/28 5:33:28/

%~dp0 “d”为Drive的缩写,即为驱动器,磁盘、“p”为Path缩写,即为路径,目录
cd是转到这个目录,使用 /D 开关,除了改变驱动器的当前目录之外,还可改变当前驱动器。


选项语法:
~0 - 删除任何引号("),扩充 %0
%~f0 - 将 %0 扩充到一个完全合格的路径名(“f”是file,即文件)
%~d0 - 仅将 %0 扩充到一个驱动器号
%~p0 - 仅将 %0 扩充到一个路径
%~n0 - 仅将 %0 扩充到一个文件名(“n”是name 文件名)
%~x0 - 仅将 %0 扩充到一个文件扩展名
%~s0 - 扩充的路径只含有短名(“s”为Short,短的)
%~a0 - 将 %0 扩充到文件的文件属性(“a”为attribute,即属性)
%~t0 - 将 %0 扩充到文件的日期/时间(“t”time)
%~z0 - 将 %0 扩充到文件的大小(Size 大小)
%~$PATH:0 - 查找列在路径环境变量的目录,并将 %0 扩充
到找到的第一个完全合格的名称。如果环境变量名未被定义,或者没有找到文件,此组合键会扩充到空字符串

可以组合修饰符来得到多重结果:

%~dp0 - 仅将 %0 扩充到一个驱动器号和路径
%~nx0 - 仅将 %0 扩充到一个文件名和扩展名
%~fs0 - 仅将 %0 扩充到一个带有短名的完整路径名
%~dp$PATH:0 - 查找列在路径环境变量的目录,并将 %I 扩充
到找到的第一个驱动器号和路径。
%~ftza0 - 将 %0 扩充到类似输出线路的 DIR

%0为当前批处理文件
如果0换成1为第一个文件,2为第2个

例如:

cd /d %~dp0%是什么意思?
批处理文件中的一条语句
意思是:更改当前目录为批处理本身的目录
比如你有个批处理a.bat在D:/qq文件夹下 
a.bat内容为 
cd /d %~dp0 
在这里:
cd /d %~dp0的意思就是cd /d d:/qq 
%0代表批处理本身 d:/qq/a.bat 
~dp是变量扩充 
d既是扩充到分区号 d: 
p就是扩充到路径 /qq 
dp就是扩充到分区号路径 d:/qq

另:

详细请参考call /?

D:/Documents and Settings/test>call /?
从批处理程序调用另一个批处理程序。

CALL [drive:][path]filename [batch-parameters]

batch-parameters 指定批处理程序所需的命令行信息。

如果命令扩展名被启用,CALL 会如下改变:

CALL 命令现在将卷标当作 CALL 的目标接受。语法是:

CALL:label arguments

一个新的批文件上下文由指定的参数所创建,控制在卷标被指定后传递到语句。您必须通过达到批脚本文件末两次来 "exit" 两次。
第一次读到文件末时,控制会回到 CALL 语句的紧后面。第二次会退出批脚本。键入 GOTO /?,参看 GOTO : EOF 扩展名的描述,此描述允许您从一个批脚本返回。

另外,批脚本文本参数参照(%0、%1、等等)已如下改变:


批脚本里的 %* 指出所有的参数(如 %1 %2 %3 %4 %5 ...)

批参数(%n)的替代已被增强。您可以使用以下语法:

%~1 - 删除引号("),扩充 %1
%~f1 - 将 %1 扩充到一个完全合格的路径名
%~d1 - 仅将 %1 扩充到一个驱动器号
%~p1 - 仅将 %1 扩充到一个路径
%~n1 - 仅将 %1 扩充到一个文件名
%~x1 - 仅将 %1 扩充到一个文件扩展名
%~s1 - 扩充的路径指含有短名
%~a1 - 将 %1 扩充到文件属性
%~t1 - 将 %1 扩充到文件的日期/时间
%~z1 - 将 %1 扩充到文件的大小
%~$PATH : 1 - 查找列在 PATH 环境变量的目录,并将 %1扩充到找到的第一个完全合格的名称。如果环境变量名未被定义,或者没有找到文件,此组合键会扩充到空字符串

可以组合修定符来取得多重结果:

%~dp1 - 只将 %1 扩展到驱动器号和路径
%~nx1 - 只将 %1 扩展到文件名和扩展名
%~dp$PATH:1 - 在列在 PATH 环境变量中的目录里查找 %1,并扩展到找到的第一个文件的驱动器号和路径。
%~ftza1 - 将 %1 扩展到类似 DIR 的输出行。

在上面的例子中,%1 和 PATH 可以被其他有效数值替换。
%~ 语法被一个有效参数号码终止。%~ 修定符不能跟 %*使用


http://www.ppmy.cn/news/126031.html

相关文章

【硬件】【USB】【Type-C】

Type-C 接口优点: 接口信号对称分布,支持正反插兼容 USB3.1、USB3.0、USB2.0、USB1.1最高传输速率支持到 10Gbps最大功率支持 100W(20V&5A)支持 DisplayPort video 和 4路 audio channel 接口定义 公头: 母头&a…

动态规划——导弹拦截(最长不上升子序列、最长上升子序列)

题目链接 题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。…

算法---LeetCode 198. 打家劫舍

1. 题目 原题链接 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金,影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统,如果两间相邻的房屋在同一晚上 被小偷闯入,系统会自动报警。 给定一个代表…

[kuangbin带你飞]专题十二 基础DP1 -B - Ignatius and the Princess IV

“OK, you are not too bad, em… But you can never pass the next test.” feng5166 says. “I will tell you an odd number N, and then N integers. There will be a special integer among them, you have to tell me which integer is the special one after I tell y…

Android P DP1:WiFi-RTT、刘海、多摄像头、GIF动画、NNAPI 1.1

\ 看新闻很累?看技术新闻更累?试试下载InfoQ手机客户端,每天上下班路上听新闻,有趣还有料!\ \\ 谷歌发布了Android P第一个开发预览版(DP1),其中有几项值得注意的新特性:…

[kuangbin带你飞]专题十二 基础DP1 H - Tickets HDU - 1260

题目描述 Jesus, what a great movie! Thousands of people are rushing to the cinema. However, this is really a tuff time for Joe who sells the film tickets. He is wandering when could he go back home as early as possible. A good approach, reducing the total …

[kuangbin带你飞]专题十二 基础DP1

ID Origin Title 题解连接 167 / 465 Problem A HDU 1024 Max Sum Plus Plus here 234 / 372 Problem B HDU 1029 Ignatius and the Princess IV 水题!!! 161 / 259 Problem C HDU 1069 Monkey and Banana here …

R1286K010E(DP1/107)

R1286K010E,电源IC R1286K010E(DP1/107) 2ch DCDC(Step Up DC/DC and lnverting DC/DC) 2ch DCIDC转换器是专为AMOL ED显示电源而设计的。它包括 升压式直流变换器和逆变式DC/DC变换器。 输出电压:【4.6V到5.8V可调音圈】 操作电压:【2.3V至5.5V】 输出电…