中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 查询文件中是否存在某字符串
作者:
标题: 查询文件中是否存在某字符串 上一主题 | 下一主题
xuyuansheng
初级用户





积分 20
发帖 8
注册 2007-1-17
状态 离线
『楼 主』:  查询文件中是否存在某字符串

用find、findstr时,可以得到相关的结果,选用参数/C时,可以得到符合条件的匹配数。但它会显示成形式:
----------F:\xxx.txt: 1
而不会直接得到结果0或1等。
当然,我们可以将此结果放到一个文件中,而后对此结果进行分析来判断查询的结果。但过于烦琐。
有没有更好的方法来得到查询结果。(我的本意是,只需知道要查的字符串是否在文件中存在就可以了)
请高手不吝赐教,不胜涕零。

[ Last edited by namejm on 2007-1-19 at 03:16 PM ]

2007-1-20 03:12
查看资料  发送邮件  发短消息 网志  OICQ (7867845)  编辑帖子  回复  引用回复
rubik
初级用户





积分 102
发帖 35
注册 2006-3-16
状态 离线
『第 2 楼』:  

不要吓人嘛。不容易啊

我举个例子吧,很简单的

如要确定 a.txt 中是否有 abc
type a.txt|find "abc"&&echo 找到了||echo 没找到


2007-1-20 03:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
xuyuansheng
初级用户





积分 20
发帖 8
注册 2007-1-17
状态 离线
『第 3 楼』:  

OK,谢谢楼上兄弟。
这里,其实是个包含的关系,即,如果原文件中有TTabc,也算找到abc的。
还有,如果文件太大,这样type是不中会很慢呢?能否只查文件的指定行呢?


thanks!

2007-1-20 04:08
查看资料  发送邮件  发短消息 网志  OICQ (7867845)  编辑帖子  回复  引用回复
lxmxn
版主




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


  试试findstr /n "abc" a.txt.


2007-1-20 04:21
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
rubik
初级用户





积分 102
发帖 35
注册 2006-3-16
状态 离线
『第 5 楼』:  



  Quote:
Originally posted by xuyuansheng at 2007-1-20 04:08:
OK,谢谢楼上兄弟。
这里,其实是个包含的关系,即,如果原文件中有TTabc,也算找到abc的。
还有,如果文件太大,这样type是不中会很慢呢?能否只查文件的指定行呢?

呵呵加了条件无非就是组合一下吧,应该也是容易的

再举个例子吧

查找 a.txt 中第8行是否有abc, TTabc 不算:
FINDSTR /N "\<abc\>" a.txt|FINDSTR /B "8:">nul&&echo 有||echo 没有
具体就看帮助吧/?

2007-1-20 11:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: