中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-30 23:11
中国DOS联盟论坛 » DOS疑难解答 & 问题讨论 (解答室) » (已解决)怎样在DOS批处理文件里取得U盘的盘符? 查看 1,206 回复 5
楼 主 (已解决)怎样在DOS批处理文件里取得U盘的盘符? 发表于 2006-12-26 23:13 ·  中国 重庆 联通
初级用户
积分 22
发帖 10
注册 2006-09-08 02:55
19年会员
UID 62112
状态 离线
U盘制作的DOS启动盘启动到MS-DOS7.1后,在有些机器上的盘符为“A:” ,而在另一些机器上的盘符又为“C:”。
U盘中的批处理文件 autoexec.bat 当U盘的盘符为“A:”时,需要执行程序A;当U盘的盘符为“C:”时,需要执行程序C。
请问怎样在DOS批处理文件 autoexec.bat 里取得U盘的盘符来实现?
先谢谢啦!

用4楼介绍的方法搞定。

再次谢谢热心网友的解答!

[ Last edited by chenqiguang on 2006-12-27 at 10:28 PM ]
2 发表于 2006-12-26 23:53 ·  中国 江西 宜春 樟树市 电信
新手上路
积分 7
发帖 4
注册 2005-10-16 10:58
20年会员
UID 43575
性别 男
来自 四川成都
状态 离线
楼主的问题我不能回答。
不过我可以提供我采用一个办法供参考:
在“autoexec.bat”中设定程序执行路径如下:
SET PATH=A:\dos_tool\;A:\;\C:\dos_tool\;C:\
之后执行程序,就直接写程序名。
如:
LH CTMOUSE
LH DOSKEY
不必用绝对路径调用程序。即可。
关于出现A和C盘区别的原因,与引导性U盘制作方式有关。
zip/FDD方式的,启动后为A盘
HDD方式的,启动后为C盘。
不尽之处,可以通过E-mail联系我,交流。
zplinux@21cn.com
3 发表于 2006-12-27 00:22 ·  中国 重庆 联通
初级用户
积分 22
发帖 10
注册 2006-09-08 02:55
19年会员
UID 62112
状态 离线
执行的程序需要代参数,必需用绝对路径。
4 发表于 2006-12-27 03:48 ·  中国 安徽 马鞍山 电信
金牌会员
★★★★
积分 3,946
发帖 1,884
注册 2006-01-20 13:00
20年会员
UID 49283
性别 男
状态 离线
可以在你的U盘根目录放一个特征文件,用于判断。
假如文件为myudisk.000
if not exit a:\myudisk.000 goto c
a
goro exit

:c
c

:exit

[ Last edited by lianjiang2004 on 2006-12-27 at 03:50 AM ]
Windows 一键还原
http://www.yjhy.com
5 发表于 2006-12-27 05:09 ·  中国 重庆 联通
初级用户
积分 22
发帖 10
注册 2006-09-08 02:55
19年会员
UID 62112
状态 离线
Originally posted by lianjiang2004 at 2006-12-27 03:48:
可以在你的U盘根目录放一个特征文件,用于判断。
假如文件为myudisk.000
if not exit a:\myudisk.000 goto c
a
goro exit

:c
c

:exit

[ Last edited by lianjiang2004 ...


试验后再回复
6 发表于 2006-12-30 00:18 ·  中国 四川 成都 电信
初级用户
积分 66
发帖 24
注册 2006-12-14 01:18
19年会员
UID 73443
性别 男
状态 离线
这个问题很简单,我在做U盘启动时也遇见过,U盘本来是ZIP的,但有些主板启动后非要认成C:盘,所以就要识别启动盘的盘符。
有两个方法:
1、特征辨别,FOR %%A IN (A: C:) DO IF EXIST DOS\DRIVERS\NUL SET BDR=%%A (DOS\DRIVERS是我U盘中的目录)这样就可以将启动盘符设置到%BDR%变量中了。
2、用一个小工具:bootdrv.com ,运行它后将返回 errorrlevel 值,判断就可以知道启动盘符了
论坛跳转: