Bash
剝離 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 什麼的?
ping -c2 domain.com | head -n-3
要擺脫領先的換行符:
ping -c2 domain.com | head -n-4
那個怎麼樣?
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'
^$ - 是刪除空行