Isolieren Sie einen Zeilenabschnitt aus der Protokolldatei und drucken Sie ihn dann auf dem Bildschirm aus.

Isolieren Sie einen Zeilenabschnitt aus der Protokolldatei und drucken Sie ihn dann auf dem Bildschirm aus.

Wenn ich eine Datei habe, die alle 5 Minuten die Anzahl der Datensätze aktualisiert, sieht die Ausgabe ungefähr so ​​aus:

timestamp name of log file dataset record count 8600

timestamp name of log file dataset record count 8610

Wie kann ich dataset record count XXXXnur diese Zeichenfolge effektiv isolieren und auf dem Bildschirm ausdrucken?

Antwort1

Eine Möglichkeit, mit awk:

awk 'match($0, "dataset record count [[:digit:]]+") { print substr($0, RSTART, RLENGTH) }' input

oder weitergeleitet über:

command | awk 'match($0, "dataset record count [[:digit:]]+") { print substr($0, RSTART, RLENGTH) }'

Oder mit einem grep, das Folgendes akzeptiert -o:

grep -Eo 'dataset record count [[:digit:]]+' input

oder weitergeleitet:

command | grep -Eo 'dataset record count [[:digit:]]+'

verwandte Informationen