GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Werte vom Terminal extrahieren?

Für diese Frage gibt es hier bereits Antworten :Wie man ein awk-Skript schreibt, das die Zeit von Ping einfängt

(2 Antworten)
Vor 3 Jahren geschlossen.

Ich brauche Hilfe, um nur den Zeitwert zu extrahieren, wenn ich mit sed pinge.

ping 192.168.1.1
PING 192.168.1.11 (192.168.1.11) 56(84) bytes of data.
64 bytes from 192.168.1.11: icmp_seq=1 ttl=64 time=0.028 ms
64 bytes from 192.168.1.11: icmp_seq=2 ttl=64 time=0.027 ms
64 bytes from 192.168.1.11: icmp_seq=3 ttl=64 time=0.024 ms
64 bytes from 192.168.1.11: icmp_seq=4 ttl=64 time=0.031 ms

Nach der Verwendung von sed möchte ich also die folgende Ausgabe erhalten:

ping 192.168.1.1 | sed '???'
0.028
0.027
0.024
0.031

Vielen Dank!

Akzeptierte Antwort:

Mit sed Sie können Folgendes tun:

ping 192.168.1.1 | sed -n 's/.*time=\([^ ]*\).*/\1/p'

Das sucht einfach nach der längsten Nicht-Leerstelle nach time= , verwendet Klammern, um es zu erfassen, damit wir es später als \1 bezeichnen können und ersetzt einfach alles in der Leitung durch das, was erfasst wurde. Das -n (standardmäßig nicht drucken) zusammen mit /p (drucken, falls dies funktioniert hat) am Ende des Substitutionsoperators stellen Sie sicher, dass wir nur relevante Zeilen drucken.

sed würde ich nicht verwenden Dafür sind andere Tools hier einfacher. Zum Beispiel:

  1. grep

    ping 192.168.1.1 | grep -Po 'time=\K\S+'
    
  2. Perl

    ping 192.168.1.1 | perl -lne '/time=(\S+)/ && print $1'
    
  3. ach

    ping 192.168.1.1 | awk -F'[= ]' '/time=/{print $(NF-1)}'
    

Ubuntu
  1. So melden Sie sich sofort von einem Terminal bei Ubuntu ab

  2. Datei aus Docker-Image extrahieren?

  3. Diagramme aus PDFs extrahieren?

  4. Ubuntu – Problem beim Ping von einer bestimmten Schnittstelle?

  5. Fahren Sie den Windows-Rechner vom Linux-Terminal herunter

Generieren von Zufallszahlen aus dem Linux-Terminal

So starten Sie Ubuntu vom Terminal aus neu

Steuern Sie die Bildschirmhelligkeit über das Ubuntu-Terminal

2 Möglichkeiten zum Upgrade von Ubuntu 16.10 auf Ubuntu 17.04 (Grafik &Terminal)

2 Möglichkeiten zum Upgrade von Ubuntu 18.04 auf 18.10 (GUI &Terminal)

Wie entferne ich Fehlergeräusche vom Pycharm-Terminal?