中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-06 15:59
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请问如何查找多个文件? 查看 766 回复 3
楼 主 请问如何查找多个文件? 发表于 2007-11-28 21:34 ·  中国 广东 东莞 电信
初级用户
积分 56
发帖 19
注册 2007-02-26 13:24
19年会员
UID 80230
性别 男
状态 离线
当文件1、2。。。9、10任一存在时,提示“至少有一文件存在”,当无一存在时提示“没有文件存在”,可以用语句if exist... ( if exist... (echo ok)) ,即
if exist 文件1 echo “至少有一文件存在” else ( if exist 文件2 echo “至少有一文件存在” ( if exist ...else (echo “没有文件存在”))

但查找10个或更多文件时语名太长,请问有其他解决办法吗?譬如用用OR 或AND。
谢谢!
2 发表于 2007-11-28 22:11 ·  中国 甘肃 张掖 电信
金牌会员
★★★★
积分 4,103
发帖 1,744
注册 2006-01-20 13:00
20年会员
UID 49241
性别 男
来自 甘肃.临泽
状态 离线
可以
for /l %%? in (1,1,10) do (if exist %%? set a=00)
if defined a (echo 有) else (echo 无)

大概这样,如不对请改改
3 发表于 2007-11-28 22:42 ·  中国 广东 东莞 电信
初级用户
积分 56
发帖 19
注册 2007-02-26 13:24
19年会员
UID 80230
性别 男
状态 离线
不好意思,看不明,想不通

[ Last edited by fatmingli on 2007-11-28 at 10:51 PM ]
4 发表于 2007-11-29 17:02 ·  中国 河北 保定 联通
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线
将所有的文件名保存在一个文件文件中,例如叫list.txt。

然后用这些命令:

set exist=
for /f "tokens=*" %i in ( list.txt ) do if exist "%i" set exist=1
if %exist%==1 echo 至少有一个文件存在。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
论坛跳转: