删除 ping 命令的输出?

删除 ping 命令的输出?

我想好像可以从最后三行中删除“ping”命令的结果,这些结果始终是:

--- domain.com ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 3.837/4.501/4.839/0.469 ms 

是否可以使 ping 不显示此行?

我尝试过以下方法:

ping -c2 domain.com | xargs grep -v "statistics \|transmitted\|round-trip"

并且:

ping -c2 domain.com | grep -v "statistics \|transmitted\|round-trip"

但它似乎不起作用。这仅在 Mac 上进行了测试。它没有在 Linux 上进行测试。

所以,我想知道是否有可能以某种方式完成这项工作?可能是用awk之类的吗?

答案1

ping -c2 domain.com | head -n-3

要摆脱领先的换行符:

ping -c2 domain.com | head -n-4

答案2

那个怎么样?

ping -c 2 domain.com | grep -E "PING|icmp_seq"

或者如果你不想要第一行

ping -c 2 domain.com | grep -E "icmp_seq"

或者如果你真的想删除行

ping -c 2 domain.com | sed '/statistics\|packets\|rtt\|^$/d'

^$ - 是删除空行

相关内容