【发布时间】:2015-06-09 09:45:11
【问题描述】:
我有以下格式的服务器日志,我想要 awk 可以在 2 个日期之间提取日志。
日志格式:
00:00:00,002 INFO [LOG.XXX] XXX
01:11:00,001 INFO [LOG.XXX] XXX
02:00:01,002 INFO [LOG.XXX] XXX
SOME JUNK
02:02:00,002 INFO [LOG.XXX] XXX
03:11:00,001 INFO [LOG.XXX] XXX
SOME JUNK
03:00:00,002 INFO [LOG.XXX] XXX
04:00:00,001 INFO [LOG.XXX] XXX
10:00:01,002 INFO [LOG.XXX] XXX
10:59:01,002 INFO [LOG.XXX] XXX
12:03:01,002 INFO [LOG.XXX] XXX
在这里,我想获取时间:01 到 10 之间的日志
输出
01:11:00,001 INFO [LOG.XXX] XXX
02:00:01,002 INFO [LOG.XXX] XXX
SOME JUNK
02:02:00,002 INFO [LOG.XXX] XXX
03:11:00,001 INFO [LOG.XXX] XXX
SOME JUNK
03:00:00,002 INFO [LOG.XXX] XXX
04:00:00,001 INFO [LOG.XXX] XXX
10:00:01,002 INFO [LOG.XXX] XXX
10:59:01,002 INFO [LOG.XXX] XXX
我尝试过的选项:
我可以使用“-n”选项 grep 时间戳,然后使用 sed 命令剪切这些行号。但是这种方法的问题是我的日志文件以 GB 为单位,这使得它非常慢,所以我希望 awk 能够达到这个目的。
【问题讨论】:
标签: awk