[BAT]cmd命令之 cd /d %~dp0

时间:2023-03-09 13:23:30
[BAT]cmd命令之 cd /d %~dp0

cd /d %~dp0是什么意思啊?
批处理文件中的一条语句
意思是
更改当前目录为批处理本身的目录
有些晕吧?不急,我举例
比如你有个批处理a.bat在D:\qq文件夹下
a.bat内容为
cd /d %~dp0
在这里

cd /d 表示直接转换到后面的路径,否则如果切换盘符,就需要再输入盘符才能切换路径
cd /d %~dp0的意思就是cd /d d:\qq
%0代表批处理本身 d:\qq\a.bat
~dp是变量扩充
d既是扩充到分区号 d:
p就是扩充到路径 \qq
dp就是扩充到分区号路径 d:\qq