Chinaunix

标题: 请教一个awk的问题 [打印本页]

作者: davie5201314    时间: 2011-09-23 10:13
标题: 请教一个awk的问题
我想把ping值截取丢包率下来
先ping www.163.com -c 10>1.log
1.log内容如下
64 bytes from 123.103.14.237-BJ-CNC (123.103.14.237): icmp_seq=8 ttl=46 time=184 ms
64 bytes from 123.103.14.237-BJ-CNC (123.103.14.237): icmp_seq=9 ttl=46 time=185 ms
64 bytes from 123.103.14.237-BJ-CNC (123.103.14.237): icmp_seq=10 ttl=46 time=184 ms

--- 163.xdwscache.glb0.lxdns.com ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9000ms
rtt min/avg/max/mdev = 166.464/179.156/185.771/5.616 ms

然后用awk命令

awk -F '/^10/{print $4}' 1.log

为什么没有反应呢?是我哪里写错了?
作者: 一棵菠菜    时间: 2011-09-23 10:24
^10是以10开头的行,你确定没搞错么?
作者: 一棵菠菜    时间: 2011-09-23 10:26
还有你加个F 干什么。。。。。
作者: jason680    时间: 2011-09-23 10:29
我想把ping值截取丢包率下来
先ping  -c 10>1.log
1.log内容如下
64 bytes from 123.103.14.237-BJ-CNC  ...
davie5201314 发表于 2011-09-23 10:13



# awk '/^10/{print $4}' 1.log
10
作者: mpstat    时间: 2011-09-23 10:34
awk '/^10/{print $6}'
作者: waker    时间: 2011-09-23 10:36
AWK在等你输入数据阿
输入
abc
123 456
Ctrl-D试试
作者: davie5201314    时间: 2011-09-26 10:44
回复 5# mpstat


    怎样把%去掉,然后用再进行数字判断呢?,我想要丢包率大于5%报警
作者: mpstat    时间: 2011-09-26 10:57
  1. v=$(grep -oP '(?<=, )[0-9]+(?=% packet loss)' 1.log)

  2. [ $v -gt 5 ] && echo "error~~~~~~"
复制代码
回复  mpstat


    怎样把%去掉,然后用再进行数字判断呢?,我想要丢包率大于5%报警
davie5201314 发表于 2011-09-26 10:44





欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2