Мне интересно, как я могу сделать следующие greps:
и
Спасибо
Я отвечу на них в обратном порядке:
grep Журнал Apache, начиная с `15 ноября 2010 г. до последней записи в журнале.
Это не требует никакого анализа даты и может быть легко выполнено с помощью sed
:
# sed -n '/15\/Nov\/2010/,$ p' /path/to/access_log
Это говорит, что нужно показать линии (p
) начиная с 15/Nov/2010
через конец файла ($
).
grep Журнал Apache только для диапазона дат, предположим, с 5 ноября 2010 г. по 5 декабря 2010 г.
Это почти то же самое, но вместо того, чтобы показывать строки до конца файла, вы хотите остановить печать строк, когда вы достигнете второй даты. Вы можете попробовать что-то вроде этого:
# sed -n '/5\/Nov\/2010/,/5\/Dec\/2010/ p'
Обратите внимание, что в обоих этих примерах я избегаю /
персонажи, потому что sed
использует их для разделения регулярных выражений.