我们有这样的日志
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
答案1
您要查找的行以 开头20/08/02
,而不是2020/08/02
。尝试%y
代替%Y
,这将给出年份的最后两位数。