Board logo

标题: 怎样精简这段命令? [打印本页]

作者: icevan     时间: 2008-3-6 18:09    标题: 怎样精简这段命令?
IF EXIST x:\filename1 goto 1 ECHO 没有文件 pecmd.exe wait 4000 goto 1 :1 start pecmd.exe load x:\filename1 就是判断一个文件有没有。没有的话给出提示并暂停一会在 继续执行下面的.上面的我感觉比较烦琐。希望能用一句就 实现。 谢谢咯。

作者: icevan     时间: 2008-3-6 18:15
我尝试这样写不知道对吗? 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 ]

作者: fastslz     时间: 2008-3-6 19:43
dir x:\filename1||echo 没有文件 &pecmd.exe wait 4000&&start  pecmd.exe load x:\filename2
未测试

作者: icevan     时间: 2008-3-6 22:08
测试了下 用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

作者: icevan     时间: 2008-3-8 19:40
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可以用来做判断...

作者: fastslz     时间: 2008-3-8 20:57
再开阔点思路
dir /a-dhr D:\xxx.txt||echo D盘没有包含隐藏只读的 xxx.txt 文件
dir /adhr D:\xxx.txt||echo D盘没有包含隐藏只读的 xxx.txt 文件夹

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

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

作者: lee928     时间: 2008-3-9 21:08
||是用来表示如果之前的语句执行失败就继续下面的语句是吗?

作者: lxmxn     时间: 2008-3-9 22:06
Originally posted by lee928 at 2008-3-9 21:08: ||是用来表示如果之前的语句执行失败就继续下面的语句是吗?
CMD/DOS下符号的作用参考 www.cn-dos.net/forum/viewthrea ...