Ausgabe des Ping-Befehls entfernen?

Ausgabe des Ping-Befehls entfernen?

Ich würde gerne wissen, ob es möglich ist, das Ergebnis des Ping-Befehls aus den letzten drei Zeilen zu extrahieren, die immer lauten:

--- 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 

Wäre es möglich, Ping so einzustellen, dass diese Zeilen NICHT angezeigt werden?

Ich habe es mit Folgendem versucht:

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

und auch:

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

Aber es scheint nicht zu funktionieren. Dies wurde nur auf einem Mac getestet. Unter Linux wurde es nicht getestet.

Ich habe mich also gefragt, ob es möglich sein wird, das irgendwie zum Laufen zu bringen. Vielleicht mit awk oder so?

Antwort1

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

So entfernen Sie auch den führenden Zeilenumbruch:

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

Antwort2

Wie ist es damit?

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

Oder wenn Sie nicht die erste Zeile wollen

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

Oder wenn Sie wirklich Zeilen löschen möchten

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

^$ - dient zum Löschen leerer Zeilen

verwandte Informationen