![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-03 02:14 |
共 48,038 主题排行 / 350,123 发帖 / 今日 1 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 在DOS7.1中,用什么方法把”cd“输出内容赋予变量中? |
| 可打印版本 1,173 / 8 |
| 第1楼 zts59 | 发表于 2006-08-10 11:04 |
| 中级用户 发帖 104 积分 387 | |
|
在DOS7.1中,用什么方法把”cd“输出内容赋予变量中? 刚启动DOS7.1,无外部命令。
想通过“CD”得到刚启动后的盘符。并赋予变量中。 注:因为是镜像文件,不能创建文件。 [ Last edited by zts59 on 2006-8-10 at 11:06 ] |
|
| 第2楼 zts59 | 发表于 2006-08-10 21:16 |
| 中级用户 发帖 104 积分 387 | |
|
无解吗??
只有不通过CD来得到盘符了,呵呵,用%comspec%了 |
|
| 第3楼 brglng | 发表于 2006-08-11 10:35 |
| 银牌会员 发帖 466 积分 1,200 来自 上海 | |
|
exit | %comspec% /Q /K prompt set a=$n > a.bat
call a.bat |
|
| 第4楼 zts59 | 发表于 2006-08-11 13:37 |
| 中级用户 发帖 104 积分 387 | |
|
谢谢楼上的,
不过有点问题,变量A并没有得到当前盘符。 所以我用了 if %comspec%==C:\COMMAND.COM goto next|set bootp=C: if %comspec%==A:\COMMAND.COM goto next|set bootp=A: |
|
| 第5楼 brglng | 发表于 2006-08-11 14:09 |
| 银牌会员 发帖 466 积分 1,200 来自 上海 | |
Originally posted by zts59 at 2006-8-11 01:37 PM: 它得到的是盘符的字母。如果后面要加“:”可以改成: exit | %comspec% /Q /K prompt set a=$n: > a.bat call a.bat 如果把上述“$n”改为“$p”则得到当前路径。 |
|
| 第6楼 zts59 | 发表于 2006-08-11 18:41 |
| 中级用户 发帖 104 积分 387 | |
|
不对吧,不知道这么朋友有没有测试,
/Q 参数不存在 难道是我的DOS7.1有问题? 把/Q去掉后运行,其实没有得到变量A 而是把提示符变成了 set a=C 因为不能建立文件,也有输出到A.bat是不行的。 其实你不用调用A.bat 你用echo %a%看看结果吧 [ Last edited by zts59 on 2006-8-11 at 18:54 ] |
|
| 第7楼 brglng | 发表于 2006-08-11 20:39 |
| 银牌会员 发帖 466 积分 1,200 来自 上海 | |
|
我知道了
MSDOS 7.1的Command.com没有/Q参数,而照上面执行后%a%变量多出一个“exit” 试试这样吧: echo @prompt @set a=$n: >a.bat %comspec% /c a.bat >b.bat call b.bat del a.bat del b.bat 我在VPC中测试成功。但是在cmd下测试没通过。但是5楼的方法在cmd下能通过。但是这两种方法在FreeDOS的FreeCOM下都不能成功,不知什么原因。 [ Last edited by brglng on 2006-8-11 at 20:56 ] |
|
| 第8楼 zts59 | 发表于 2006-08-11 21:04 |
| 中级用户 发帖 104 积分 387 | |
|
谢谢了,
其实你还建立了两个批处理,因为是镜像文件,不能产生文件的,是不能写入的。 这样的话,我还要考滤要加载内存虚拟盘,然后用上述代码。不可合理哟。 况且如果可以写入文件的话,用: cd\ cd>aa.txt 就可以了, 要知道DOS启动的话,不是在A盘,就是在C盘。所用 if %comspec%=…… 就最简单了。 也谢谢你的方法,给了另一种思路。 [ Last edited by zts59 on 2006-8-11 at 21:07 ] |
|
| 第9楼 movy | 发表于 2007-01-14 09:21 |
| 初级用户 发帖 33 积分 61 | |
|
说明一下,对于镜像软盘 并非不能写文件,而是要镜像盘还有空闲空间,另外,如果关机前没有把新生成文件转存到硬盘,关机后就会“消失”——因为镜像软盘中的文件是存 在 内存中 的。
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |