中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-08 03:47
48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,253 会员排行
DOS批处理 & 脚本技术(批处理室) » 怎样让批处理程序知道当前批处理程序的文件名?
可打印版本  818 / 9
第1楼 clian76 发表于 2008-04-16 21:52
中级用户 发帖 162 积分 363
怎样让批处理程序知道当前批处理程序的文件名?
比如,我写了一个批处理脚本。命名叫: 我的批处理.bat
然后打开它,要让它显示出它自己的文件名字来(此时应是”我的批处理.bat“),就算我把这个“我的批处理.bat”文件改名了,再打开它,它还是能够正确的显示出它当前的文件名来。请问大虾们有办法吗?

[ Last edited by clian76 on 2008-4-16 at 09:56 PM ]
第2楼 afeichai 发表于 2008-04-16 21:57
初级用户 发帖 78 积分 171
title 我的批处理.bat
第3楼 dikex 发表于 2008-04-16 22:00
高级用户 发帖 366 积分 788
是说这个么?
echo "%~nx0"
第4楼 clian76 发表于 2008-04-16 22:08
中级用户 发帖 162 积分 363
正是这句,原来真的可以呀,还这么简单!几个字母就搞定了,厉害呀!!!不知道我要学多久
第5楼 clian76 发表于 2008-04-16 22:11
中级用户 发帖 162 积分 363
可以帮我讲一下“ "%~nx0" ”这句的意思吗?怎么实现的??
第6楼 dikex 发表于 2008-04-16 22:15
高级用户 发帖 366 积分 788
call /?
或者 for /?
翻到最下面
第7楼 regvip2008 发表于 2008-04-17 14:43
初级用户 发帖 87 积分 187
Originally posted by clian76 at 2008-4-16 10:11 PM:
可以帮我讲一下“ "%~nx0" ”这句的意思吗?怎么实现的??

扩展批处理本身到文件名加扩展名形式!
当然for /?里面讲得更全面!
第8楼 clian76 发表于 2008-04-17 16:42
中级用户 发帖 162 积分 363
谢谢!又学到了新的东西
第9楼 woo88 发表于 2008-04-17 22:39
初级用户 发帖 96 积分 188
在纯DOS下不能用啊,有没有其它方法呢
第10楼 qzwqzw 发表于 2008-04-18 09:42
银牌会员 发帖 636 积分 2,343
纯dos和cmd都可以用 %0
只是cmd增加了扩展功能而已

%0 实际上取得是执行批处理的命令行的第一个字符串
不加扩展只显示命令行的原内容
扩展后会根据需要显示盘符、路径、文件名、扩展名、修改时间、大小等信息
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023