中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 怎样精简这段命令? 上一主题 | 下一主题
icevan
初级用户





积分 67
发帖 12
注册 2005-8-15
状态 离线
『楼 主』:  怎样精简这段命令?

IF  EXIST x:\filename1 goto 1
ECHO 没有文件
pecmd.exe wait 4000
goto 1

:1
start  pecmd.exe load x:\filename1

就是判断一个文件有没有。没有的话给出提示并暂停一会在
继续执行下面的.上面的我感觉比较烦琐。希望能用一句就
实现。

谢谢咯。

2008-3-6 18:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
icevan
初级用户





积分 67
发帖 12
注册 2005-8-15
状态 离线
『第 2 楼』:  

我尝试这样写不知道对吗?
if not exist x:\filename1 echo 没有文件 & pecmd.exe wait 4000
start  pecmd.exe load x:\filename2

因为用pecmd.exe来暂停一段时间后面要跟几个参数。
所以不知道有什么要注意的地方。。

[ Last edited by icevan on 2008-3-6 at 06:21 PM ]

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

DOS一根葱


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


dir x:\filename1||echo 没有文件 &pecmd.exe wait 4000&&start  pecmd.exe load x:\filename2
未测试

   此帖被 +11 点积分        点击查看详情   
评分人:【 everest79 分数: +11  时间:2008-3-8 19:53




第一高手    第二高手

2008-3-6 19:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
icevan
初级用户





积分 67
发帖 12
注册 2005-8-15
状态 离线
『第 4 楼』:  

测试了下
用DIR检查到不存在的盘符时会有提示 系统找不到指定的路径
用IF没有提示.这样可以吗?有什么要注意的吗?
if exist x:\filename1  start pecmd.exe load x:\filename2 ||echo 没有文件 &pecmd.exe wait 4000&&start  pecmd.exe load x:\filename2

或者
if not exist x:\filename1  echo 没有文件 &pecmd.exe wait 4000&&start  pecmd.exe load x:\filename2 ||start pecmd.exe load x:\filename2

2008-3-6 22:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
icevan
初级用户





积分 67
发帖 12
注册 2005-8-15
状态 离线
『第 5 楼』:  



  Quote:
Originally posted by fastslz at 2008-3-6 19:43:
dir x:\filename1||echo 没有文件 &pecmd.exe wait 4000&&start  pecmd.exe load x:\filename2
未测试

谢谢你了..开阔了思路.原来不只IF可以用来做判断...

2008-3-8 19:40
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


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

再开阔点思路
dir /a-dhr D:\xxx.txt||echo D盘没有包含隐藏只读的 xxx.txt 文件

dir /adhr D:\xxx.txt||echo D盘没有包含隐藏只读的 xxx.txt 文件夹




第一高手    第二高手

2008-3-8 20:57
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
fastslz
铂金会员

DOS一根葱


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

哦、忘了提醒,要象if exist那样没有提示,这样就可以了
dir /adhr D:\xxx.txt>nul 2>nul||echo D盘没有包含隐藏只读的 xxx.txt 文件夹



第一高手    第二高手

2008-3-8 21:17
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
icevan
初级用户





积分 67
发帖 12
注册 2005-8-15
状态 离线
『第 8 楼』:  

谢谢指点.
dir x:\filename1/a ||echo 没有文件 &pecmd.exe wait 4000&&start  pecmd.exe load x:\filename2
这样是不是就不会因为文件属性的原因造成判断出错了.

2008-3-9 04:19
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lee928
初级用户





积分 36
发帖 14
注册 2008-3-5
状态 离线
『第 9 楼』:  

||是用来表示如果之前的语句执行失败就继续下面的语句是吗?

2008-3-9 21:08
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 10 楼』:  



  Quote:
Originally posted by lee928 at 2008-3-9 21:08:
||是用来表示如果之前的语句执行失败就继续下面的语句是吗?

CMD/DOS下符号的作用参考
http://www.cn-dos.net/forum/viewthread.php?tid=30985

2008-3-9 22:06
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: