求职 # 每日一道面试题 # linux 过滤出日志中所有的 IP 地址并去重

Ikaros灬 · 2018年05月24日 · 最后由 phinexdaz 回复于 2018年05月24日 · 2582 次阅读

现在有如下日志
[info] 2018-05-24 00:00:01 ip221.14.185.51 login.
[info] 2018-05-24 00:01:01 ip11.44.15.21 connect.
[info] 2018-05-24 00:01:21 ip221.14.185.51 logout.
[info] 2018-05-24 00:01:31 ip2.16.15.252 Unlawful connection.
[info] 2018-05-24 00:01:41 ip221.14.185.51 login.
[info] 2018-05-24 00:01:51 ip221.14.185.51 logout.
[info] 2018-05-24 00:01:52 ip145.181.14.91 login.

如何使用 linux 命令将此日志中的 IP 地址单独提取出来,然后排序并去重。

共收到 4 条回复 时间 点赞
匿名 #1 · 2018年05月24日

linux 不知道,py 的话可以用正则把 ip 提取到一个列表里,然后直接 set 一下就哦了

awk 'print$4' |sort|uniq

我的 shell 是够烂的。不会。。。

awk '{print $4}' | cut -c3- | sort | uniq

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册