我需要在 /var/log/messages 中搜索“昨天”的所有行。当我使用以下代码段时,由于日期的格式为“Jun 9”,我得到的结果为零。(这里没有显示,但在日志文件中,当月的天数小于 10 时,会用额外的空格填充)。
cat /var/log/messages | grep `date --date="yesterday" +%b\ %e`
Run Code Online (Sandbox Code Playgroud)
当我进入
$ date --date="yesterday" +%b\ %e
Run Code Online (Sandbox Code Playgroud)
在命令行上,它返回昨天的日期,带填充。
但是当我将它与 grep 和反引号结合起来时,额外的填充被抑制了,这给了我零结果。
我需要更改什么才能使用额外的填充来评估“日期” ?
您应该能够通过在反引号周围加上引号来解决此问题:
cat /var/log/messages | grep "`date --date="yesterday" +%b\ %e`"
Run Code Online (Sandbox Code Playgroud)