如果要实现 ping 加时间信息,然后还要实时保存到一个文件中,那么就与awk结合
1、只用ping信息
[root@zhang pingbackage]# ping 115.239.211.112 PING 115.239.211.112
(115.239.211.112) 56(84) bytes of data. 64 bytes from 115.239.211.112:
icmp_seq=1 ttl=53 time=27.1 ms 64 bytes from 115.239.211.112: icmp_seq=2 ttl=53
time=27.0 ms 64 bytes from 115.239.211.112: icmp_seq=3 ttl=53 time=27.1 ms 64
bytes from 115.239.211.112: icmp_seq=4 ttl=53 time=27.0 ms 64 bytes from
115.239.211.112: icmp_seq=5 ttl=53 time=27.0 ms
2、命令行打印并加上时间信息
[root@zhang pingbackage]# ping 115.239.211.112 | awk '{ print $0"\t"
strftime("%Y-%m-%d %H:%M:%S",systime())}' PING 115.239.211.112
(115.239.211.112) 56(84) bytes of data. 2017-03-25 18:01:07 64 bytes from
115.239.211.112: icmp_seq=1 ttl=53 time=27.1 ms 2017-03-25 18:01:07 64 bytes
from 115.239.211.112: icmp_seq=2 ttl=53 time=27.1 ms 2017-03-25 18:01:08 64
bytes from 115.239.211.112: icmp_seq=3 ttl=53 time=27.0 ms 2017-03-25
18:01:09 64 bytes from 115.239.211.112: icmp_seq=4 ttl=53 time=27.0 ms
2017-03-25 18:01:10 64 bytes from 115.239.211.112: icmp_seq=5 ttl=53 time=27.0
ms 2017-03-25 18:01:11
3、将这些信息打印到一个文件中
[root@zhang pingbackage]# ping 115.239.211.112 | awk '{ print $0"\t"
strftime("%Y-%m-%d %H:%M:%S",systime()); fflush()}' >> outIP.info & [2] 13707
注意:使用 fflush() ,不然文件不会有信息,因为awk也是有缓存的。
今日推荐