【发布时间】:2021-10-09 08:47:13
【问题描述】:
我在 Linux 操作系统 (redhat) 中有一个日志文件,它插入数据库的事件。该文件如下所示:
2021-08-04 09:35:00.212 +03 [100] FATAL: password fail for x
2021-08-04 09:35:20.276 +03 [101] FATAL: password fail for x
2021-08-04 09:36:05.223 +03 [104] FATAL: password fail for x
2021-08-04 09:36:20.823 +03 [305] FATAL: password fail for y
2021-08-04 09:37:00.299 +03 [322] FATAL: password fail for y
2021-08-04 09:37:50.350 +03 [328] FATAL: password fail for y
2021-08-04 09:38:20.822 +03 [340] FATAL: password fail for z
2021-08-04 09:38:22.500 +03 [370] FATAL: password fail for z
2021-08-04 09:38:50.210 +03 [420] FATAL: password fail for z
2021-08-04 09:39:01.372 +03 [423] FATAL: password fail for z
我只想获取每个用户 (x,y,z) 的最新日期时间行。所以它应该如下所示:
2021-08-04 09:36:05.223 +03 [104] FATAL: password fail for x
2021-08-04 09:37:50.350 +03 [328] FATAL: password fail for y
2021-08-04 09:39:01.372 +03 [423] FATAL: password fail for z
【问题讨论】:
-
请添加您的尝试
-
grep无法做到这一点。您可以尝试使用sort和uniq构建一些东西,但实际上这更像是脚本语言的工作 -python或perl或awk或类似
标签: python linux bash awk grep