中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-19 08:20
47,814 主题排行 / 349,908 发帖 / 今日 0 篇 / 48,259 会员排行
DOS疑难解答 & 问题讨论 (解答室) » 如何利用%cd%显示批处理文件所在的根目录?
可打印版本  1,790 / 7
第1楼 xlrtx 发表于 2008-06-21 16:37
新手上路 发帖 4 积分 10
如何利用%cd%显示批处理文件所在的根目录?
记得以前有人说过,好像是取了变量%cd%的前3个字符,一个命令就可以了
第2楼 Climbing 发表于 2008-06-22 09:33
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
%CD%不一定表示批处理所在的目录,而是表示你运行这个批处理时的当前目录。假设这样:

D:\DOS> c:\batch\my.bat

那么%cd%表示d:\dos目录,而my.bat所在的目录却是c:\batch。

如果在cmd下,可以用%~dp0来表示批处理所在盘符。
第3楼 xlrtx 发表于 2008-06-22 22:41
新手上路 发帖 4 积分 10
谢谢楼上的解答,可惜理解错了

能否实现这个效果?

运行这个bat文件,就会echo出这个bat文件的所在盘符.

以前有个人说过,用一个命令就可以了
第4楼 lixin12345 发表于 2008-06-23 08:52
初级用户 发帖 13 积分 27
@echo off
echo 当前路径是:%cd%
echo 当前盘符是:%cd:~0,1%
pause
第5楼 xlrtx 发表于 2008-06-24 00:01
新手上路 发帖 4 积分 10
感谢楼上的解答 XD~
第6楼 quya 发表于 2008-06-24 00:09
高级用户 发帖 172 积分 558 来自 江苏
Originally posted by xlrtx at 2008-6-24 12:01 AM:
感谢楼上的解答 XD~


其实2楼是对的, 他没理解错。

而4楼不完全对,虽然大多数情况下是同样结果。

所以,我有必要提醒你一下,最应该感谢的人在2楼和我。
第7楼 Climbing 发表于 2008-06-24 12:32
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
看问题不能凭想象,实践才能出真知。
第8楼 fastslz 发表于 2008-06-24 23:15
铂金会员 发帖 2,315 积分 5,493 来自 上海

详情参阅: for /? 第5次回车上的内容
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023