【发布时间】:2020-10-06 14:18:00
【问题描述】:
我有 100 个日志文件,我希望 awk 在给定时间戳之间递归搜索给定模式。 日志文件看起来像这样
2010-03-24 07:00:01 ZZZZC941948879 RUFFLES 222.222.222.222 GET / - 80 - 220.181.7.113 HTTP/1.1
2010-03-24 07:00:23 ZZZZC941948879 RUFFLES 222.222.222.222 GET
代码是
awk -v "b=$date1" -v "e=$date2" '$1 >= b && $1 <= e' log.txt > output
grep -i "21things" output
我可以搜索模式,但只能搜索单个文件。是否可以使用 awk 命令进行递归搜索?
感谢您的帮助..!!
【问题讨论】:
-
使用
find ... | xargs awk ...将所有日志传递给 awk -
你能澄清一下这里的“递归”是什么意思吗?看起来您可能只是想在一堆文件上运行 awk 命令。另外,当日志文件中没有逗号时,为什么要使用
-F ','?请编辑您的问题,以更清楚地说明您要做什么。