Log-Datei nach Datum greppen
Hallo zusammen, gibt es eine einfache Möglichkeit, etwa die /v/l/mail nach allen Zeilen in einem bestimmten Zeitraum herauszugreppen? Mir fiele da nur eine vermutlich recht unhandliche Lösung in Kombination mit awk usw. ein. Konkret brauche ich alle Einträge aus /var/log/mail, die im Zeitraum 29.11. zwischen 16:58 und 17:09 entstanden sind. Die fragliche Zeile hab ich auch schon gefunden, ich frage mich nur, ob es nicht eine elegantere Methode gegeben hätte. -- Andre Tann -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Donnerstag, 20. Dezember 2007 12:06:09 schrieb Andre Tann:
Hallo zusammen,
gibt es eine einfache Möglichkeit, etwa die /v/l/mail nach allen Zeilen in einem bestimmten Zeitraum herauszugreppen? Mir fiele da nur eine vermutlich recht unhandliche Lösung in Kombination mit awk usw. ein.
Konkret brauche ich alle Einträge aus /var/log/mail, die im Zeitraum 29.11. zwischen 16:58 und 17:09 entstanden sind. Die fragliche Zeile hab ich auch schon gefunden, ich frage mich nur, ob es nicht eine elegantere Methode gegeben hätte.
Ich würds hiermit versuchen .. sudo egrep "^Nov 29 (16:5[8-9]|17:0[0-9])" /var/log/mail -- Mit freundlichen Grüßen Alexander Schaber -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Don, 20 Dez 2007, Andre Tann schrieb:
gibt es eine einfache Möglichkeit, etwa die /v/l/mail nach allen Zeilen in einem bestimmten Zeitraum herauszugreppen? Mir fiele da nur eine vermutlich recht unhandliche Lösung in Kombination mit awk usw. ein.
Konkret brauche ich alle Einträge aus /var/log/mail, die im Zeitraum 29.11. zwischen 16:58 und 17:09 entstanden sind. Die fragliche Zeile hab ich auch schon gefunden, ich frage mich nur, ob es nicht eine elegantere Methode gegeben hätte.
Was hast du gegen awk? awk '$1 == "Dez" && $2 == 20 { split($3, t, ":"); if( t[1] == 16 && t[2] > 58 || t[1] == 17 && t[2] <= 09 ) { print; } }' HTH, -dnh -- "MS hat das Konzept der grafischen Benutzeroberflaechen nicht erfunden sondern bestenfalls pervertiert." -- Alexander Sanda in doc -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
David Haller, Donnerstag, 20. Dezember 2007 22:40:
Was hast du gegen awk?
Im vorliegenden Fall: das:
awk '$1 == "Dez" && $2 == 20 { split($3, t, ":"); if( t[1] == 16 && t[2] > 58 || t[1] == 17 && t[2] <= 09 ) { print; } }'
Das erscheint mir doch etwas zuviel des guten. Man müßte irgendwie dem syslog sagen können, daß er statt Dec 21 09:35:17 schreibt: 20071221093517 Dann würde man sich viel leichter tun mit der Definition eines bestimmten Zeitraumes... -- Andre Tann -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (3)
-
Alexander Horst Schaber
-
Andre Tann
-
David Haller