Grep
如何將日誌文件與日期語法匹配
我們有這樣的日誌
more log 20/08/02 13:41:39 some text at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB 20/08/02 13:41:40 some text 20/08/02 13:41:41 some text at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2347 at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2347 at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2347 20/08/02 13:41:42 some text 20/08/02 13:41:43 some text at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2347
我只想匹配帶有日期的行
所以我們這樣做
echo "$(date +"%Y/%m/%d")"
它給了我們
2020/08/02
但是當我們嘗試用 grep 記錄日期時,我們沒有得到任何輸出
例子:
grep "$(date +"%Y/%m/%d")" log
我的 grep 語法有什麼問題
?
預期產出
20/08/02 13:41:39 some text 20/08/02 13:41:40 some text 20/08/02 13:41:41 some text 20/08/02 13:41:42 some text 20/08/02 13:41:43 some text
您要查找的行以 開頭
20/08/02
,而不是2020/08/02
。嘗試%y
代替%Y
,這將給出年份的最後兩位數。