[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 【已解决】求助批处理如何从多个不同的txt中查找指定的字符?

本帖最后由 pcisong 于 2022-10-13 09:50 编辑

遇到的问题:
现有600个文本文件,每个文本中有1万行,请问如何从这600个文件中查找一段字符?

anytxt
filelocationpro
类似的软件还挺多的

TOP

回复 1# pcisong


    请找一个文件,上传到网盘,说一下你需要在那个文件里面查找什么
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

如果不介意第3方工具gawk( http://bcn.bathome.net/tool/4.1.0/gawk.exe ),可把600个txt文件(ANSI格式)放置于1个独立的文件夹,用以下指令试试:
  1. gawk "/一段字符/" *.txt>con
复制代码
注:示例输出到con(其实就屏显,这是gawk屏显含中文信息时防止出错特殊手段),可替换为自己想要的任何文件名,完成后再添加扩展名。
[一段字符]如果含特殊字符,需用\转义,如含问号:/一段字符\?/

TOP

回复 4# hfxiang


    嗯,用了第三方软件

TOP

本帖最后由 pcisong 于 2022-10-13 09:48 编辑

回复 3# Batcher


    用了第三方软件,问题已经解决,感谢管理员支持。
客户来了3个数据包,每个数据包300个文件,每个文件有1万条数据,每条数据对应一个产品。
生产单应该下3个300万的生产单,将数据包与订单一一对应;现在生产只下了一个900万的生产单,导致将这3个数据包混掉了,现在需要将生产数据和客户提供的数据包对应,好在问题已经解决了。

TOP

回复 2# pd1


    感谢!

TOP

  1. @if (0)==(0) echo off
  2. title 保存为ANSI编码,处理ANSI编码的TXT文件
  3. dir /b *.txt | cscript -nologo -e:jscript "%~0" >提取.log
  4. pause&exit/b
  5. @end
  6. fso = new ActiveXObject("Scripting.FileSystemObject");
  7. while (!WSH.StdIn.AtEndOfStream) {
  8.     f = WSH.StdIn.ReadLine();
  9.     txt = fso.OpenTextFile(f,1).ReadAll();
  10.     txt = txt.match(/.*查找内容.*/g).join('\r\n');
  11.     WScript.Echo(txt)
  12. }
复制代码

TOP

  1. findstr /n /l /c:"指定字符" *.txt
复制代码

TOP

返回列表