免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2132 | 回复: 4
打印 上一主题 下一主题

[文本处理] 如何从ping.log文件截取有packet loss的文本 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2019-02-21 15:26 |只看该作者 |倒序浏览

说明:ping.log文件是从服务器发起对192.168.1.78的ping持续记录,每ping10个包记录一次,在该文件中会存在多行ping丢包的情况(比如10% packet loss), 如果有10% packet loss的行,把该ping记录发生时间点开始的行 到 rtt min/avg/max/mdev = 行 的所有行(标注红色的部分)截取下来写入到新文本文件ping_new.log中。10% packet loss的信息在ping.log文件中可能存在多行,请问如何实现,谢谢!

#more ping.log
###################### 2019年 02月 20日 星期三 05:43:39 CST  #######################
PING 192.168.1.78 (192.168.1.7 56(84) bytes of data.
64 bytes from 192.168.1.78: icmp_seq=1 ttl=249 time=11.3 ms
64 bytes from 192.168.1.78: icmp_seq=2 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=3 ttl=249 time=11.3 ms
64 bytes from 192.168.1.78: icmp_seq=4 ttl=249 time=11.3 ms
64 bytes from 192.168.1.78: icmp_seq=5 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=6 ttl=249 time=11.3 ms
64 bytes from 192.168.1.78: icmp_seq=7 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=8 ttl=249 time=20.1 ms
64 bytes from 192.168.1.78: icmp_seq=9 ttl=249 time=11.3 ms
64 bytes from 192.168.1.78: icmp_seq=10 ttl=249 time=303 ms

--- 192.168.1.78 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9039ms
rtt min/avg/max/mdev = 11.245/41.399/303.390/87.370 ms


###################### 2019年 02月 20日 星期三 05:43:48 CST  #######################
PING 192.168.1.78 (192.168.1.7 56(84) bytes of data.
64 bytes from 192.168.1.78: icmp_seq=1 ttl=249 time=82.2 ms
64 bytes from 192.168.1.78: icmp_seq=2 ttl=249 time=488 ms
64 bytes from 192.168.1.78: icmp_seq=3 ttl=249 time=3204 ms
64 bytes from 192.168.1.78: icmp_seq=5 ttl=249 time=1350 ms
64 bytes from 192.168.1.78: icmp_seq=6 ttl=249 time=351 ms
64 bytes from 192.168.1.78: icmp_seq=7 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=8 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=9 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=10 ttl=249 time=11.2 ms


--- 192.168.1.78 ping statistics ---
10 packets transmitted, 9 received, 10% packet loss, time 9003ms
rtt min/avg/max/mdev = 11.251/613.607/3204.662/1004.110 ms, pipe 4


###################### 2019年 02月 20日 星期三 05:44:03 CST  #######################
PING 192.168.1.78 (192.168.1.7 56(84) bytes of data.
64 bytes from 192.168.1.78: icmp_seq=1 ttl=249 time=11.3 ms
64 bytes from 192.168.1.78: icmp_seq=2 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=3 ttl=249 time=11.1 ms
64 bytes from 192.168.1.78: icmp_seq=4 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=5 ttl=249 time=11.3 ms
64 bytes from 192.168.1.78: icmp_seq=6 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=7 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=8 ttl=249 time=11.3 ms
64 bytes from 192.168.1.78: icmp_seq=9 ttl=249 time=11.2 ms
64 bytes from 192.168.1.78: icmp_seq=10 ttl=249 time=11.2 ms

--- 192.168.1.78 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9011ms
rtt min/avg/max/mdev = 11.189/11.282/11.358/0.105 ms

论坛徽章:
0
2 [报告]
发表于 2019-02-21 15:48 |只看该作者
awk '/^###/{b=1} b==1&&!/^ *$/{a=a$0"\n"} /packet loss/{loss=$6; sub(/%/,"",loss)} /^rtt/{if (loss>=10)print a; a=""}' ping.log

论坛徽章:
0
3 [报告]
发表于 2019-02-21 17:41 |只看该作者
回复 2# csccyab

脚本测试可用,高手,谢谢了!

论坛徽章:
0
4 [报告]
发表于 2019-02-22 12:39 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
25
程序设计版块每日发帖之星
日期:2016-05-03 06:20:0015-16赛季CBA联赛之八一
日期:2018-07-05 10:34:09黑曼巴
日期:2018-07-06 15:19:5015-16赛季CBA联赛之佛山
日期:2018-08-03 13:19:3315-16赛季CBA联赛之山西
日期:2018-08-07 19:46:2315-16赛季CBA联赛之广夏
日期:2018-08-08 19:31:5015-16赛季CBA联赛之青岛
日期:2018-11-26 15:21:5015-16赛季CBA联赛之上海
日期:2018-12-11 09:45:3219周年集字徽章-年
日期:2020-04-18 23:54:5215-16赛季CBA联赛之深圳
日期:2020-04-19 21:40:19黑曼巴
日期:2022-04-03 17:55:1315-16赛季CBA联赛之八一
日期:2018-07-03 16:56:46
5 [报告]
发表于 2019-02-22 13:50 |只看该作者
本帖最后由 wh7211 于 2019-02-22 13:52 编辑

回复 1# david0


  1. awk '{a=a?a"\n"$0:$0}match($0,"([0-9]+)% packet loss",c){if(c[1]==10){b=1}}/rtt/{if(b){print a};a="";b=0}' ping.log
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP