【发布时间】:2020-04-19 00:32:27
【问题描述】:
我目前有一个 Bash 脚本,它可以从访问日志中抓取特定信息并将其写入 CSV,格式如下:
0004F2426702,75.214.224.151,16/Apr/2020
0004F2426702,75.214.224.151,17/Apr/2020
0004F2426702,75.214.224.151,18/Apr/2020
0004F2426702,80.111.224.252,18/Apr/2020
00085D19F072,75.214.224.151,16/Apr/2020
00085D20A469,75.214.224.151,16/Apr/2020
0018B9FFDD58,75.214.224.151,16/Apr/2020
64167F801BF5,81.97.142.178,16/Apr/2020
64167F801BF5,95.97.142.178,18/Apr/2020
0004F2426702,80.111.224.252,19/Apr/2020
但是,现在我被困住了!
我想匹配第 1 列(MAC 地址),然后检查第 2 列是否匹配。如果不是,则打印第 1 列匹配的所有行。
此脚本的目的是发现源 IP 是否已更改。
【问题讨论】:
-
匹配什么?包括所需的输出将有助于弄清楚你想要什么。
-
因此,对于第 1 列,查找具有相同 MAC 地址的所有条目,然后检查第 2 列/每个条目的 IP 地址是否相同。如果没有,打印每一行的输出,最好是转置日期。以 0004F2426702 为例,我希望得到以下输出: 0004F2426702,75.214.224.151,16/Apr/2020,17/Apr/2020,18/Apr/2020 0004F2426702,80.111.224.252,918/Apr/2020 /2020 年 4 月
标签: bash csv compare match diff