可以使用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

即为分数最高的前三名。

awk 统计某个字段topN

原文地址: https://www.cveoy.top/t/topic/cvJW 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录