awk 统计某个字段topN
可以使用awk命令结合sort和head命令来实现统计某个字段的topN。
例如,假设我们有一个文件data.txt,其中包含以下内容:
name,age,score
Tom,20,85
Jerry,21,92
Lucy,19,78
John,20,88
Amy,18,90
如果我们想要统计分数(score)字段的top3,可以使用以下命令:
awk -F',' 'NR>1 {print $3}' data.txt | sort -rn | head -n 3
解释:
- awk -F',' 'NR>1 {print $3}' data.txt:使用逗号作为分隔符,打印除了第一行以外的所有行的第三个字段(score)。
- sort -rn:按照数字大小降序排序。
- head -n 3:只输出前三行,即top3。
输出结果为:
92
90
88
即为分数最高的前三名。
原文地址: https://www.cveoy.top/t/topic/cvJW 著作权归作者所有。请勿转载和采集!