中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-07 05:10
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助求助]判断光驱里有无光盘 查看 726 回复 3
楼 主 [求助求助]判断光驱里有无光盘 发表于 2008-01-07 09:46 ·  中国 福建 泉州 电信
新手上路
积分 10
发帖 4
注册 2007-11-16 19:39
18年会员
UID 102863
性别 女
状态 离线

代码是这样的

@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 ]
2 发表于 2008-01-07 10:49 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
楼主同一问题发了n贴了,只要达到正确判断有无光盘目的,还管它nul.ext 是什么意思啊。
if exist %a%\nul.ext 和 if exist %a%\nul 相同
你不会又要问if exist %a%\nul是什么意思了吧
第一高手 第二高手

3 发表于 2008-01-07 11:18 ·  中国 福建 泉州 电信
新手上路
积分 10
发帖 4
注册 2007-11-16 19:39
18年会员
UID 102863
性别 女
状态 离线
呃- -||``我是想那样问!!

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

也就是说我问了类似 1加1为什么等于2 的问题??
4 发表于 2008-01-07 12:07 ·  中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
接入正题
@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 ]
第一高手 第二高手

论坛跳转: