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

Gibt es einen Unix / Linux-Befehl zum Zählen von Zeilen pro Sekunde von stdin?

Lösung 1:

pv ist dein Befehl! P ipe V iewer gibt Statistiken über die durchlaufenden Daten aus und kann überall in Ihrer Pipeline ausgeführt werden, da es stdin direkt an stdout weiterleitet. Zum Beispiel:

tail -f /var/log/nginx/access.log | pv --line-mode --rate > /dev/null

Die pv Der Befehl gibt an stderr die aktuelle Anzahl von Zeilen pro Sekunde aus (der Standardwert ist Bytes pro Sekunde), was für diese bestimmte Datenquelle (die Standardprotokolldatei von Nginx) den eingehenden Webanforderungen pro Sekunde entspricht. Ich interessiere mich nur für die Anzahl, also leite ich stdout in /dev/null . Es gibt auch Optionen wie:

  • -b (Gesamtzahl der Zeilen),
  • --average-rate (Durchschnittsrate seit Beginn) und
  • --timer (verfolgt, wie lange das Rohr läuft).

Wenn Sie nicht --line-mode sagen , es zählt Bytes, was wahrscheinlich nicht das ist, was Sie für Serverprotokolle wollen, aber an anderer Stelle nützlich sein könnte.

Schlussbemerkung:... | pv -lb > file.txt ist sehr ähnlich wie ... | tee file.txt | awk '{printf "\r%lu", NR}' , was auch zum Zählen von Zeilen praktisch ist, aber die pv Der Aufruf ist viel kürzer, obwohl die Ausgabe nicht ganz so aufregend ist – pv wird standardmäßig jede Sekunde aktualisiert, während awk Befehl wird kontinuierlich aktualisiert.

Lösung 2:

Vielleicht sollten Sie es mit logtop versuchen ?

tail -f foobar.log |logtop

Lösung 3:

watch -n 3 "wc -l logfile"

Manpage

watch - führt ein Programm regelmäßig aus und zeigt die Ausgabe im Vollbildmodus Standardmäßig wird das Programm alle 2 Sekunden ausgeführt; Verwenden Sie -n oder --interval, um ein anderes Intervall anzugeben.


Linux
  1. Löschen bestimmter Zeilen aus einer Datei in der Linux-Befehlszeile

  2. Linux-wc-Befehl

  3. UNIX / Linux:10 Netstat-Befehlsbeispiele

  4. So zählen Sie die Anzahl der Zeilen in einer Datei unter Linux (wc- und nl-Befehlsbeispiele)

  5. Linux/Unix-Befehl zum Verbinden von N Eingabezeilen mit Trennzeichen?

Grep-Befehl unter Linux/UNIX

ls-Befehl unter Linux/UNIX

cp-Befehl unter Linux/UNIX

Finden Sie Befehl in Linux/UNIX

Linux wc Command – Anzahl der Wörter, Zeilen, Zeichen in einer Datei

wc-Befehlsbeispiele in Linux