【发布时间】:2021-02-17 07:06:50
【问题描述】:
我编写了一个满足提取要求的脚本,但我无法根据格式要求对结果进行排序。这是我的脚本:
awk '{print $9" "$1}' ab.log | sort | uniq -c | awk '{print $2 "\t" $3}' | sort -nr
按降序显示状态码和IP地址;
404 89.86.144.219
404 81.192.148.245
.
.
403 172.6.0.3
403 129.16.26.39
402 145.8.0.9
402 256.23.4.57
.
.
401 126.158.20.9
但要求是: 状态代码组必须按哪个状态代码组出现频率更高进行排序,并且 IP 地址必须按每个组中出现的次数进行排序。
所以输出应该是:
404 127.0.0.1
404 xxx.xxx.xxx.xxx
.
.
200 xxx.xxx.xxx.xxx
200 xxx.xxx.xxx.xxx
.
.
403 xxx.xxx.xxx.xxx
403 xxx.xxx.xxx.xxx
如何按照上述要求对结果进行排序?
【问题讨论】:
-
请发布一些用于测试的示例数据以符合预期的输出。