Ich möchte Daten mit Intervallen von 1 Stunde in meiner Protokolldatei extrahieren. Hier ist meine Variablen:Wie bekomme ich die Stunden mit awk?
date_file = date +"%Y-%m-%d %H"
date_minus_one = date -d "-1 hour" +"%Y-%m-%d %H"
date_minus_two = date -d "-2 hour" +"%Y-%m-%d %H"
Hier ist meine Syntax in awk aber immer alle Daten drucken.
awk '$date_file >= $date_minus_one && $date_file <= $date_minus_two' <filename>
Ich habe auch grep in ein Intervall von 1 Stunde erhalten, aber es hat nicht funktioniert.
Hier ist ein Beispieldaten I pro Stunde Daten extrahieren möchten:
2016-03-30|00:54:46,060|[WARNING]
2016-03-30|00:55:46,318|[OK]
2016-03-30|00:55:46,318|[OK]
2016-03-30|02:42:13,691|[UNKNOWN]
2016-03-30|07:53:16,356|[CRITICAL]
2016-03-30|08:56:41,410|[WARNING]
Was kann ich tun, um es immer wahr zu machen, damit ich pro Stunde Daten mit meiner Datei bekommen kann? –
@RobertJohnMartin Crontab? – Kent
@RobertJohnMartin - wir wissen nicht, wie Ihre Dateien aussehen, so dass es unmöglich zu beantworten ist - aktualisieren Sie Ihre Frage, indem Sie Beispiele für die Dateinamen und Beispiele für den Dateiinhalt hinzufügen – Soren