新之助meow

Kratos
专注于用户阅读体验的响应式博客主题
  1. 首页
  2. 未分类
  3. 正文

linux 在文件记录 ping 每个包输出的时间 包括丢包

2016年7月23日 607点热度 2人点赞 0条评论

一个业务项目隔三差五的总会有人反馈联不通主机,只好写个ping监测一下外网出口ip的连接状态,记下时间,等有人再说连不上是,可以判断一下是哪一方的问题。

 

命令如下,只要替换其中的ip就可以了。

nohup ping -D -O 202.99.96.68   |perl -M'POSIX qw(strftime setsid)' -nle 'BEGIN{setsid();$SIG{CHLD} = "IGNORE";}if($_=~/^\[(\d+)\.(\d+)\]\s(64 bytes from \d+\.\d+\.\d+\.\d+\:|no answer yet for)\sicmp_seq=(\d+)(.?|\sttl=\d+\stime=([\d\.]+)\sms)$/){$tm=strftime("%Y-%m-%d %H:%M:%S",localtime($1));$dt=substr($tm,0,10);open(FI,">>pinglog.202.99.96.68.$dt.txt");print FI $tm.".$2\t$4\t$6\t$3";close(FI);}'&

 

可以在每天一个的文件中输出tab符号分割如下内容,可以直接导入excel进行筛选统计
时间戳                                    包序号   延迟ms         状态
2016-07-23 16:09:58.337631      6511    2.56    64 bytes from 202.99.96.68:     ##正常响应
2016-07-23 16:12:22.626366     15                  no answer yet for                     ##丢包

 

简要说明

nohup ping -D -O 202.99.96.68   |    #nohup在终端断开是也能ping,ping -D 输出unix时间戳 -O 输出丢包
perl
-M'POSIX qw(strftime setsid)'  #导出函数
-nle '
BEGIN{                                            #在-n循环读取的loop 之前执行
setsid();                                            #创建新的session和process group,成为其leader,并脱离控制终端。
$SIG{CHLD} = 'IGNORE';                   #忽略终端退出时程序收到的hup信号
}
if($_=~/^\[(\d+)\.(\d+)\]\s(64 bytes from \d+\.\d+\.\d+\.\d+\:|no answer yet for)\sicmp_seq=(\d+)(.?|\sttl=\d+\stime=([\d\.]+)\sms)$/){   # 用正则表达式过滤ping输出内容
$tm=strftime("%Y-%m-%d %H:%M:%S",localtime($1));   ##unix时间戳 转换为字符串时间显示
$dt=substr($tm,0,10);                                                    ##截取日期
open(FI,">>pinglog.202.99.96.68.$dt.txt");                      ##打开文件
print FI $tm.".$2\t$4\t$6\t$3";                                         ##写入文件
close(FI);                                                                     ##关闭文件
}'&

 

参考 http://charlee.li/create-daemon-with-perl.html

标签: perl ping 丢包 时间
最后更新:2016年7月23日

tjccn_wx@hotmail.com

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

归档

  • 2026 年 10 月
  • 2024 年 2 月
  • 2023 年 7 月
  • 2023 年 1 月
  • 2022 年 10 月
  • 2022 年 9 月
  • 2022 年 6 月
  • 2022 年 4 月
  • 2022 年 3 月
  • 2022 年 2 月
  • 2021 年 11 月
  • 2021 年 10 月
  • 2021 年 9 月
  • 2021 年 1 月
  • 2020 年 12 月
  • 2020 年 11 月
  • 2020 年 10 月
  • 2020 年 9 月
  • 2020 年 7 月
  • 2020 年 6 月
  • 2020 年 5 月
  • 2020 年 4 月
  • 2020 年 3 月
  • 2020 年 2 月
  • 2019 年 10 月
  • 2019 年 8 月
  • 2019 年 7 月
  • 2019 年 4 月
  • 2019 年 3 月
  • 2018 年 12 月
  • 2018 年 11 月
  • 2018 年 10 月
  • 2018 年 6 月
  • 2018 年 5 月
  • 2018 年 4 月
  • 2018 年 3 月
  • 2018 年 2 月
  • 2018 年 1 月
  • 2017 年 12 月
  • 2017 年 11 月
  • 2017 年 10 月
  • 2017 年 9 月
  • 2017 年 8 月
  • 2017 年 7 月
  • 2017 年 6 月
  • 2017 年 5 月
  • 2017 年 4 月
  • 2017 年 3 月
  • 2017 年 2 月
  • 2017 年 1 月
  • 2016 年 12 月
  • 2016 年 11 月
  • 2016 年 10 月
  • 2016 年 9 月
  • 2016 年 8 月
  • 2016 年 7 月
  • 2016 年 6 月
  • 2016 年 5 月
  • 2016 年 4 月
  • 2016 年 3 月
  • 2015 年 12 月
  • 2015 年 8 月

分类

  • android
  • mysql
  • nethunter
  • proxmark
  • 未分类

COPYRIGHT © 2026 新之助meow. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang