【发布时间】:2021-08-09 15:47:53
【问题描述】:
我的数据的第 13 列包含 YYMMDD 格式的日期。我正在尝试对今天和前几天使用 $date 进行正则表达式。以下代码都不起作用。有人能给我一些见解吗?
今天
awk -F, ($13~/$(date '+%Y%m%d')/) {n++} END {print n+0}' file.csv)
3 天前
awk -F, ($13~/$(date -d "$date -3 days" '+%Y%m%d')/) {n++} END {print n+0}' file.csv
【问题讨论】:
-
欢迎来到 SO,感谢您的努力。您能否在您的问题中添加输入和预期输出示例以使其更清晰。
-
正如我在your previous question 上对您发表的评论,请考虑:stackoverflow.com/q/6697753/10971581
-
您使用的是什么日期命令?在 OSX 上 -d 设置时区, -v 用于计算时间增量。所以
date '+%Y%m%d'是现在,date -v-72H '+%Y%m%d'是提前 3 天(72 小时)。 -
您好,欢迎来到 SO。您显示的命令甚至在语法上都不正确。你试过了吗?