如何grep文件中小于特定日期的日期

如何grep文件中小于特定日期的日期

我有一个像 Blah blah blah 2018-12-13 这样的日志文件。现在我想 grep 日期在 2018-05-01 之前的日志文件。我的目的是过滤小于2018-05-01的日志文件

答案1

我们可以使用awk比较运算符

$ 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

使用dategrep来自 dateutils 的,http://www.fresse.org/dateutils/

dategrep '<2018-05-01' <file

相关内容