中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [在线求助]判断磁盘类型是否是光驱并写入变量
作者:
标题: [在线求助]判断磁盘类型是否是光驱并写入变量 上一主题 | 下一主题
HUNRYBECKY
银牌会员





积分 1179
发帖 442
注册 2006-9-9
状态 离线
『楼 主』:  [在线求助]判断磁盘类型是否是光驱并写入变量

我使用下面的语句来判断是否是光驱,却返回的不正确,代码该怎样写:
fsutil fsinfo drivetype %cd:~0,2% |FINDSTR /I "CD-ROM"
IF ERRORLEVEL=0  SET ISGQ=Y
IF ERRORLEVEL=1  SET ISGQ=N
ECHO %ISGQ%
PAUSE

2006-12-15 03:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HUNRYBECKY
银牌会员





积分 1179
发帖 442
注册 2006-9-9
状态 离线
『第 2 楼』:  

怎么还没有人来回答呀。

2006-12-15 03:48
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
electronixtar
铂金会员





积分 7493
发帖 2672
注册 2005-9-2
状态 离线
『第 3 楼』:  

我们没有必须回答的义务




C:\>BLOG http://initiative.yo2.cn/
C:\>hh.exe ntcmds.chm::/ntcmds.htm
C:\>cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>"
2006-12-15 04:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tianzizhi
高级用户




积分 622
发帖 214
注册 2006-9-22
状态 离线
『第 4 楼』:  

@echo off
set /p cd=请输入盘符:
fsutil fsinfo drivetype %cd:~-10% |FINDSTR /I "CD-ROM"
IF ERRORLEVEL==0  SET ISGQ=Y
IF ERRORLEVEL==1  SET ISGQ=N
ECHO %ISGQ%
PAUSE

   此帖被 +2 点积分      点击查看详情   
评分人:【 HUNRYBECKY 分数: +2  时间:2006-12-15 07:43


2006-12-15 06:34
查看资料  发送邮件  发短消息 网志  OICQ (419503077)  编辑帖子  回复  引用回复
zh159
金牌会员




积分 3687
发帖 1467
注册 2005-8-8
状态 离线
『第 5 楼』:  

ERRORLEVEL返回值正确用法:
if ERRORLEVEL 3 ...
if ERRORLEVEL 2 ...
if ERRORLEVEL 1 ...
从大到小
或者:
if %ERRORLEVEL% == 1
if %ERRORLEVEL% == 2
if %ERRORLEVEL% == 3
不用按顺序

   此帖被 +2 点积分      点击查看详情   
评分人:【 HUNRYBECKY 分数: +2  时间:2006-12-15 07:44


2006-12-15 06:53
查看资料  发短消息 网志   编辑帖子  回复  引用回复
HUNRYBECKY
银牌会员





积分 1179
发帖 442
注册 2006-9-9
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by zh159 at 2006-12-15 06:53:
ERRORLEVEL返回值正确用法:
if ERRORLEVEL 3 ...
if ERRORLEVEL 2 ...
if ERRORLEVEL 1 ...
从大到小
或者:
if %ERRORLEVEL% == 1
if %ERRORLEVEL% == 2
if %ERRORLEVEL% == 3
不用挠...

谢谢两位的回答,原来我错误的运用了ERRORLEVEL,现在明白了。非常感谢二位高手的指点。

2006-12-15 07:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HUNRYBECKY
银牌会员





积分 1179
发帖 442
注册 2006-9-9
状态 离线
『第 7 楼』:  

为感谢两位每人给2分,不要嫌弃少,对你们的热心表示一下。 :-)

2006-12-15 07:45
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tianzizhi
高级用户




积分 622
发帖 214
注册 2006-9-22
状态 离线
『第 8 楼』:  

HUNRYBECKY,其实你的errorlevel用的是有点问题,但没达到错的地步.
set /p cd=请输入盘符:
fsutil fsinfo drivetype %cd:~0,2% |FINDSTR /I "CD-ROM"
IF ERRORLEVEL=0  SET ISGQ=Y
IF ERRORLEVEL=1  SET ISGQ=N
ECHO %ISGQ%
PAUSE
在我这边没出现错,我的系统为2003,你不改再试一下吧,还是像原来一样出错的话,把出错的地方贴出来我想看一下.

2006-12-15 07:58
查看资料  发送邮件  发短消息 网志  OICQ (419503077)  编辑帖子  回复  引用回复

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


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



论坛跳转: