中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助求助]判断光驱里有无光盘
作者:
标题: [求助求助]判断光驱里有无光盘 上一主题 | 下一主题
745522988
新手上路





积分 10
发帖 4
注册 2007-11-16
状态 离线
『楼 主』:  [求助求助]判断光驱里有无光盘


代码是这样的

@echo off
for %%i in (C:,D:,E:,F:,G:,H:,I:,G:,K:,L:) do fsutil fsinfo drivetype %%i | find "CD" && set a=%%i
echo.
if exist %a%\nul.ext (echo 有光盘) else echo 无光盘
pause>nul

我就是 %a%\nul.ext 这个看不懂

不知道 nul.ext 是什么意思


[ Last edited by 745522988 on 2008-1-7 at 09:48 AM ]

2008-1-7 09:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 2 楼』:  

楼主同一问题发了n贴了,只要达到正确判断有无光盘目的,还管它nul.ext 是什么意思啊。
if exist %a%\nul.ext 和 if exist %a%\nul 相同
你不会又要问if exist %a%\nul是什么意思了吧



第一高手    第二高手

2008-1-7 10:49
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
745522988
新手上路





积分 10
发帖 4
注册 2007-11-16
状态 离线
『第 3 楼』:  

呃- -||``我是想那样问!!

你的意 思是说判断有无光盘就是用 nul.ext 这个判 断??

也就是说我问了类似 1加1为什么等于2 的问题??

2008-1-7 11:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


积分 5493
发帖 2315
注册 2006-5-1
来自 上海
状态 离线
『第 4 楼』:  

接入正题
@echo off
setlocal enabledelayedexpansion
for /f "delims=\" %%i in ('fsutil fsinfo drives^|find /v ""') do (
    set var=%%i
    set drive=!var:~-2!
    fsutil fsinfo drivetype !drive!|find "CD">nul && if exist !drive!\nul (echo !drive! 有光盘) else (echo !drive! 无光盘)
)
pause

for /f %%a in ('"wmic logicaldisk where DriveType="5" get DeviceID |find /v "DeviceID""') do if exist %%a\nul (echo %%a 有光盘) else (echo %%a 无光盘)

@echo off
for /f "tokens=3* delims=," %%i in ('WMIC Path Win32_LogicalDisk Get DeviceID^,FileSystem^,Description /format:csv^|find /i "CD-ROM"^|find "CDFS"') do echo %%i 有光盘
[ Last edited by fastslz on 2008-1-7 at 12:08 PM ]



第一高手    第二高手

2008-1-7 12:07
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: