线上网络出现问题,经常需要ping 或者 tcping 排查网络是否稳定,有时候出问题的周期比较长,需要将结果实时输出到文件中排查。
这里给出一个小方法,将结果输出到文件,而且是实时的,不用等待命令结束后再查看文件,另外将ping也加上了时间戳,方便定位时间。
1.首先写一个ping脚本加上时间戳
cat test_ping.sh
——————————————————————————
ping -I 132.253.66.132 10.6.28.2 -i 1 | awk '{ print $0"\t" strftime("%Y-%m-%d %H:%M:%S",systime()) } '
脚本执行效果如下,ping结果后跟了时间戳:
2.授予脚本执行权限
[root@lw ~]# chmod +x test_ping.sh
3. 运行脚本
[root@lw ~]# setsid unbuffer test_ping.sh >> ping.test.txt
PS:(1)setsid 放后台运行命令;(2)unbuffer 实时输出命令
unbuffer命令需要安装模块:
sudo yum install expect-devel
sudo yum install expect
另外tcping的流程相同,只是一般tcping命令没有带上时间戳,这里提供一种centos上能运行的tcping二进制执行程序
百度云链接:
链接:https://pan.baidu.com/s/10No7Bsvr8l0jncWtTGo9KQ
提取码:hfus