Board logo

标题: [文本处理] [已解决]批处理如何在近1000个TXT文件中查找某个或几个字 [打印本页]

作者: hunterson    时间: 2009-11-19 13:39     标题: [已解决]批处理如何在近1000个TXT文件中查找某个或几个字

我有个文件夹里有1000多个TXT的小文件,基本不超过200K。我要实现在这些文件中找 某个(或者几个)字。所有 有这几个字的  文件名自动 保存到一个新建的TXT文件中。因为急用,所以请大大们支持!偶是菜鸟!

[ 本帖最后由 batman 于 2009-11-19 14:45 编辑 ]
作者: batman    时间: 2009-11-19 13:44

  1. @echo off&for /f "delims=" %%a in ('dir /b *.txt') do findstr "要查找的字" "%%a">nul&&echo %%a>>list.txt
复制代码

[ 本帖最后由 batman 于 2009-11-19 14:26 编辑 ]
作者: hunterson    时间: 2009-11-19 14:03

原帖由 batman 于 2009-11-19 13:44 发表
@echo off&for /f "deims=" %%a in ('dir /b *.txt') do findstr "要查找的字" "%%a">nul&&echo %%a>>list.txt

超版光临真是三生有幸!是否只要 替换 要查找的字 就行了。文件我保存为BAT在TXT所在文件夹,运行后 没有反应。也许1300个文件要点时间!无论如何都感谢你!
作者: hunterson    时间: 2009-11-19 14:18

好像不行啊。老大,我特意把有几个字的文件放在一个文件夹里,运行也没生成LIST.TXT文件啊。
作者: batman    时间: 2009-11-19 14:26

晕,是代码中少写了个l(delims),已修正,请再试。
作者: batman    时间: 2009-11-19 14:31

如你的文件夹没有下级目录,用下面这个要快些
  1. @echo off&for /r %%a in (*.txt) do findstr "要查找的字" "%%a">nul&&echo %%a>>list.txt
复制代码

[ 本帖最后由 batman 于 2009-11-19 14:34 编辑 ]
作者: luzhanhong    时间: 2009-11-19 14:33

学习啦...刚看完for....
作者: hunterson    时间: 2009-11-19 14:35

可以了。谢谢你超版!BAT的功能真牛。看来这里得常来学习!
作者: batman    时间: 2009-11-19 14:40     标题: 回复 8楼 的帖子

请在标题上加注【已解决】字样。
作者: hunterson    时间: 2009-11-19 14:41

原帖由 batman 于 2009-11-19 14:31 发表
如你的文件夹没有下级目录,用下面这个要快些@echo off&for /r %%a in (*.txt) do findstr "要查找的字" "%%a">nul&&echo %%a>>list.txt

我的文件只有一个目录。其实这个批处理用于找某个股票中股东是否有某个人(名字)?如果有,我仔细看这个股票,这个人在最新的股东名单中有,我就跟进!在股票软件中F10的文件夹中有1300多个TXT文件,都是股票的一些资料。2市加起来有2600多个文件。当然,在批处理中,我特定指6或者0开头的文件,这样搜索也快的。谢谢你!
作者: zqz0012005    时间: 2009-11-19 21:13

  1. findstr /ilmc:"要查找的字" *.txt >list.log
复制代码





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2