Как выполнить grep для даты, меньшей определенной даты в файле

Как выполнить grep для даты, меньшей определенной даты в файле

У меня есть файл журнала типа Blah blah blah 2018-12-13. Теперь я хочу grep файлов журнала с датой до 2018-05-01. Мое намерение - отфильтровать файлы журнала меньше 2018-05-01

решение1

Мы можем использовать awk'sоператор сравнения

$ cat ip.txt 
Blah blah blah 2018-12-13
Blah blah blah 2018-02-13
Blah blah blah 2018-05-01

$ awk '$NF < "2018-05-01"' ip.txt 
Blah blah blah 2018-02-13


Чтобы получить строки, которые меньше или равны некоторой дате:

$ awk '$NF <= "2018-05-01"' ip.txt 
Blah blah blah 2018-02-13
Blah blah blah 2018-05-01

решение2

Используя dategrepdateutils,http://www.fresse.org/dateutils/

dategrep '<2018-05-01' <file

Связанный контент