![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-02 19:08 |
共 48,038 主题排行 / 350,123 发帖 / 今日 1 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 怎么通过P来确定最后一个硬盘盘符!! |
| 可打印版本 993 / 11 |
| 第1楼 yy2372575 | 发表于 2006-12-19 23:42 |
| 初级用户 发帖 26 积分 73 | |
|
怎么通过P来确定最后一个硬盘盘符!! 我想通过P来确定最后一个硬盘盘符,怎么办呢?举例说:
我有一个程序啊a.exe存在硬盘最后一个区里,因为硬盘分区不同,可能是C,D,E也可能是C,D,E,F。但a.exe存在最后一个盘符里我想在DOS下用批来确定最后一个盘符并执行他,怎么办呢? [ Last edited by namejm on 2006-12-19 at 05:13 PM ] |
|
| 第2楼 ccwan | 发表于 2006-12-20 03:01 |
| 金牌会员 发帖 1,160 积分 2,725 来自 河北廊坊 | |
|
试了几种方法,最后定下了这个方案,它避免了将非硬盘分区(如光驱、优盘等)列出。
|
|
| 第3楼 yy2372575 | 发表于 2006-12-20 05:56 |
| 初级用户 发帖 26 积分 73 | |
|
求救!! 你的代码我试了,XP下可以。在DOS下提示:
SYNTAX ERROR 求你帮忙编一个DOS下的行吗 |
|
| 第4楼 lianjiang2004 | 发表于 2006-12-20 06:51 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
@echo off
rem 知道a.exe所在目录的话,也许可以这样。假定在bbb目录下。 set lastdrv=0 for %%p in (c: d: e: f: g: h: i: j: k: l: m: n: o:) do if exist %%p\bbb\a.exe set lastdrv=%%p echo. echo last drive is %lastdrv% pause>nul :exit [ Last edited by lianjiang2004 on 2006-12-20 at 10:26 AM ] |
|
| 第5楼 yy2372575 | 发表于 2006-12-20 09:05 |
| 初级用户 发帖 26 积分 73 | |
|
感谢 先谢谢lianjiang2004
但是你的代码中 if exist %%p\bbb\a.exe set lastdrv=%%p在DOS下不好使,没办法查出,所以每次最后盘符都是c或o |
|
| 第6楼 lianjiang2004 | 发表于 2006-12-20 10:25 |
| 金牌会员 发帖 1,884 积分 3,946 | |
Originally posted by yy2372575 at 2006-12-20 09:05: 应该不会吧?要不在for上一句加上 set lastdrv=0看看? |
|
| 第7楼 yy2372575 | 发表于 2006-12-20 20:37 |
| 初级用户 发帖 26 积分 73 | |
|
还是不好使!!不过挺谢谢你的帮忙,而且你的代码是唯一能在DOS下运行的,顺便问一句,为什么FOR在纯DOS命令不好使了?你的为什么行呢?
|
|
| 第8楼 lianjiang2004 | 发表于 2006-12-20 21:24 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
不会是在NTFS分区上吧,是的话,DOS是找不到的,需要加载NTFS驱动。
这段代码就是从我的一个批处理里搬过来的,就是用来确定特定文件所在盘符的。 刚才在纯DOS下试了,可以用。 [ Last edited by lianjiang2004 on 2006-12-20 at 10:12 PM ] |
|
| 第9楼 yy2372575 | 发表于 2006-12-21 03:11 |
| 初级用户 发帖 26 积分 73 | |
|
不是NT格式,晕!!为什么你能用我不行呢?你是在纯DOS下运行的吗?我是在虚拟机里运行的。我不会那么背吧,你行我不行!!!救命呀!!!我现在要崩溃了!!为什么FOR命令现在在纯DOS下不好使.不会是虚拟机耍我吧
|
|
| 第10楼 lianjiang2004 | 发表于 2006-12-21 04:05 |
| 金牌会员 发帖 1,884 积分 3,946 | |
|
我是在纯DOS下用的。我先也是在虚拟DOS下用,盘符能找出,但是中间会有一个出错信息,就是假如你有c: d:,会提示E:出错。这时选A即可。于是我就进入纯DOS,无误。
|
|
| 第11楼 yy2372575 | 发表于 2006-12-21 05:21 |
| 初级用户 发帖 26 积分 73 | |
|
那有可能,我就是有C D,每次都把盘符设成C,我再试试把C D去掉行不
|
|
| 第12楼 yy2372575 | 发表于 2006-12-21 05:37 |
| 初级用户 发帖 26 积分 73 | |
|
哈哈,我试过了,好使了。谢谢你几天的大力支持,要不我真不知道能不能坚持下去了!!感谢!!!---__---!!
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |