找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 25445|回复: 3

[文本处理] 批处理如何统计文本中含有指定字符串的行的数量?

[复制链接]
发表于 2017-7-28 17:19:24 | 显示全部楼层 |阅读模式
BAT求助!
如何从文本文件中提取指定文本的数量,例如,a.txt内容如下:
正在 Ping 103.88.16.4 具有 32 字节的数据:
请求超时。
请求超时。
请求超时。
请求超时。
请求超时。
请求超时。
请求超时。
请求超时。
请求超时。
请求超时。
103.19.66.4 的 Ping 统计信息:
    数据包: 已发送 = 10,已接收 = 0,丢失 = 10 (100% 丢失),
如何自动计算出其中有多少个"请求超时"呢?
发表于 2017-7-29 11:44:58 | 显示全部楼层

  1. //&cls& dir /a-d/b *.txt|cscript -nologo -e:jscript "%~0"&pause&exit/b
  2. var fso=new ActiveXObject("scripting.filesystemObject");
  3. while (!WSH.StdIn.AtEndOfStream){
  4.         f=WSH.StdIn.ReadLine();
  5.         text=fso.OpenTextFile(f,1).Readall();
  6.         arr=text.match(/请求超时/g)||[]
  7.         count=arr.length;
  8.         file=fso.OpenTextFile("result.txt",8,1)
  9.         file.write('文件'+f+'中的重复次数:'+count+'\r\n');
  10.         file.close();
  11. }

复制代码
发表于 2017-7-29 19:02:48 | 显示全部楼层
find "请求超时" /c test.txt
发表于 2017-7-29 21:32:22 | 显示全部楼层
test.ps1
  1. (gc 1.txt | Select-String "请求超时").count
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 21:26 , Processed in 0.017269 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表