我有一個像 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