У меня есть требование, откуда мне нужно к grep журналов, который покрывает от диапазона дат 25.03.2011 к 04.04.2011 (YYMMDD).
Я сделал это с командой egrep, кажется, хорошо работает для меня.
кошка/var/log/messages | egrep "02.03.2011 [6-9] |2011/03/3 [0-1] |2011/04/0 [1-4]"
Я искал команду awk, которая сделает мою жизнь простой.
Ниже отрывок файла журнала...
2011/04/01-12:15:00
2011/04/01-12:15:00
2011/04/01-12:15:00
2011/04/01-12:15:01
2011/04/01-12:15:01
2011/04/01-12:15:01
2011/04/01-12:15:01
2011/04/01-12:15:01
awk -F - '"2011/03/25" < $1 && $1 <= "2011/04/04"' filename
или, если даты являются более динамичными
d1="2011/03/25" # or whatever commands to set this date
d2="2011/04/04" # or whatever commands to set this date
awk -v start=$d1 -v end=$d2 -F - 'start < $1 && $1 <= end' filename