Grepowanie logów z pomiędzy dat

Często jest tak, że mamy w jednym pliku logi z całego dnia działania aplikacji. Jeśli wiemy, że awaria wystąpiła pomiędzy 20 a 21 wieczorem to po co grepować cały plik?

Zakładając, że każda linia naszego logu musi posiada datę i czas to aby wyodrębnić z pliku logi z odpowiednich godzin można się posłuzyć poleceniem nawk (lub awk, ale nawk przyjmuje większy input)

nawk ‚$0>=from&&$0<=to’ from=”2013-01-22 20:00″ to=”2013-01-22 21:00″ > 2013-01-22_od20_do21.log

W połączeniu z grep’em może to wyglądać na przykład tak:

grep ‚szukam errora’ plik.log | nawk ‚$0>=from&&$0<=to’ from=”2013-01-22 20:00″ to=”2013-01-22 21:00″ > 2013-01-22_Errory_od20_do21.log

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *