使用 grep 获取日期格式

使用 grep 获取日期格式

我看过类似的问题并尝试了大多数建议,但它们都没有让我有任何进展,即使我认为我有一个相当简单的任务:S。我对这整件事相当陌生,所以我已经不知道该尝试什么或我做错了什么......

因此,任务是获取列出的文件行(使用 grep),其中包含短月份名称和日期(例如 Oct 22)。该文件中有一个长格式列表(包含在当前日期创建的文件),因此应该有一些结果。然而,我得到的结果是只检查并发现了月份,而没有检查和发现当天。

到目前为止我尝试过的一些更明智的事情:

grep $(date +"%b %e") *filename*

然后我得到一行“grep:22:没有这样的文件或目录”和一个包含该月(“十月”)所有结果的列表。用+%d %eor+'%d %e''+%d %e'代替+"%d %e";的结果相同$()。 (我这一天也有一段时间有 %d,这没有什么区别,而且据我所知,无论如何也不重要,因为相关日期现在是 22 日。)

为什么这里不考虑这一天?

答案1

grep "$(date +"%b %d")" *files*

应该会更好。

如果省略双引号,则命令替换的结果$(date +"%b %d")将被拆分为单独的单词。始终在变量替换"$variable"和命令替换周围使用双引号"$(somecommand)",除非您知道为什么需要将它们省略。

相关内容