标题: [文本处理] 请问用批处理怎么批量查找文本的内容? [打印本页]
作者: zahirll 时间: 2011-3-10 06:59 标题: 请问用批处理怎么批量查找文本的内容?
我有一文件夹,文件夹下有无数文件和文件夹,有ASP的TXT的PHP的HTML的等等,这些文本文件,我想用一句批处理查询并列出这些文件里含有指定字符的文件,比如含有“联盟”这两个字符的所有文件,怎么写?必须要一句批处理完成,请问FOR能做到吗?
哦,忘了,必须要用FOR语句完成,并且只能用一句语句完成,万能的管理,我知道你能行的。,谢谢了
[ 本帖最后由 zahirll 于 2011-3-10 07:09 编辑 ]
作者: wc726842270 时间: 2011-3-10 08:19
放在相应的文件夹下- @echo off
- echo 含有"联盟"的文件有:
- for /f "delims=:" %%i in ('findstr "联盟" *^|findstr /v "bat"') do echo %%i
- pause
复制代码
作者: zahirll 时间: 2011-3-10 09:05
楼上再帮忙改改哦,我想这样直接在CMD下运行这一句批处理命令就直接得出结果,而不是保存成BAT执行
for /f "delims=:" %i in ('findstr "联盟" *^|findstr /v "bat"') do echo %i
路径也写在这一句里
作者: wc726842270 时间: 2011-3-10 09:22 标题: 回复 3楼 的帖子
CMD下显示不乱么?
for /f "tokens=1,2 delims=:" %i in ('findstr "联盟" "相应目录\*.*"') do echo %i:%j
作者: zahirll 时间: 2011-3-10 09:26
条件之允许这样,没办法,要是有查找的字符有特定字符怎么办?
不如“<%@ LANGUAGE = VBScript.Encode %>”想找这一串字符?好像不能执行了哦?
有办法解决吗?
你的QQ多少加你请教写问题
作者: liion631818 时间: 2011-3-10 12:26
cmd下也可以输入很多句的~~
作者: CrLf 时间: 2011-3-10 12:37
不明白为什么一定要用for呢?
findstr /l /m "联盟" *.*
作者: zahirll 时间: 2011-3-10 21:00
条件之允许这样,没办法,要是有查找的字符有特定字符怎么办?
不如“<%@ LANGUAGE = VBScript.Encode %>”想找这一串字符?好像不能执行了哦?
有办法解决吗?
作者: netbenton 时间: 2011-3-10 22:02
仅仅是这样功能的话,楼主可以试试系统的文件搜索功能,不但可以指定要找的文件内容,文件名又可用通配符,还可以指定时间段,以及查找的目录范围的。
作者: zahirll 时间: 2011-3-10 22:10
版主,能那样的话我还需要来问嘛,呵呵
作者: Batcher 时间: 2011-3-11 20:13 标题: 回复 8楼 的帖子
啥样的条件只允许使用一句for,但不允许使用一句findstr?
作者: Batcher 时间: 2011-3-11 20:14 标题: 回复 5楼 的帖子
特殊字符请自行转义
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |