楼 主
怎样精简这段命令?
发表于 2008-03-06 18:09 · 中国 四川 攀枝花 电信
初级用户
★
积分 67
发帖 12
注册 2005-08-15 18:25
20年会员
UID 41681
状态 离线
IF EXIST x:\filename1 goto 1
ECHO 没有文件
pecmd.exe wait 4000
goto 1
:1
start pecmd.exe load x:\filename1
就是判断一个文件有没有。没有的话给出提示并暂停一会在
继续执行下面的.上面的我感觉比较烦琐。希望能用一句就
实现。
谢谢咯。
第 2 楼
发表于 2008-03-06 18:15 · 中国 四川 攀枝花 电信
初级用户
★
积分 67
发帖 12
注册 2005-08-15 18:25
20年会员
UID 41681
状态 离线
我尝试这样写不知道对吗?
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 ]
第 3 楼
发表于 2008-03-06 19:43 · 中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
dir x:\filename1||echo 没有文件 &pecmd.exe wait 4000&&start pecmd.exe load x:\filename2
未测试
第 4 楼
发表于 2008-03-06 22:08 · 中国 四川 攀枝花 电信
初级用户
★
积分 67
发帖 12
注册 2005-08-15 18:25
20年会员
UID 41681
状态 离线
测试了下
用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
第 5 楼
发表于 2008-03-08 19:40 · 中国 四川 攀枝花 电信
初级用户
★
积分 67
发帖 12
注册 2005-08-15 18:25
20年会员
UID 41681
状态 离线
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可以用来做判断...
第 6 楼
发表于 2008-03-08 20:57 · 中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
再开阔点思路
dir /a-dhr D:\xxx.txt||echo D盘没有包含隐藏只读的 xxx.txt 文件
dir /adhr D:\xxx.txt||echo D盘没有包含隐藏只读的 xxx.txt 文件夹
第 7 楼
发表于 2008-03-08 21:17 · 中国 上海 松江区 电信
铂金会员
★★★★
DOS一根葱
积分 5,493
发帖 2,315
注册 2006-05-01 10:41
20年会员
UID 54766
性别 男
来自 上海
状态 离线
哦、忘了提醒,要象if exist那样没有提示,这样就可以了
dir /adhr D:\xxx.txt>nul 2>nul||echo D盘没有包含隐藏只读的 xxx.txt 文件夹
第 8 楼
发表于 2008-03-09 04:19 · 中国 四川 攀枝花 电信
初级用户
★
积分 67
发帖 12
注册 2005-08-15 18:25
20年会员
UID 41681
状态 离线
谢谢指点.
dir x:\filename1/a ||echo 没有文件 &pecmd.exe wait 4000&&start pecmd.exe load x:\filename2
这样是不是就不会因为文件属性的原因造成判断出错了.
第 9 楼
发表于 2008-03-09 21:08 · 中国 四川 成都 电信
初级用户
★
积分 36
发帖 14
注册 2008-03-05 20:27
18年会员
UID 112123
性别 男
状态 离线
||是用来表示如果之前的语句执行失败就继续下面的语句是吗?
第 10 楼
发表于 2008-03-09 22:06 · 中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
20年会员
UID 59080
状态 离线
论坛跳转: