我有一个csv看起来像这样:
user, score
bob, 10
alice, 12
peter, 20
bruce, 32
...
该文件很大,我想获得得分最高的前50名用户。
如何使用简单的shell命令执行此操作?
您可能想说:
sort -t',' -k2 -nr file
对于给定的输入,它返回:
bruce, 32
peter, 20
alice, 12
bob, 10
user, score
这sort
与以下参数一起使用:
-t','
将字段分隔符设置为逗号。-k2
表示sort
必须与第二列一起使用。-nr
表示您要按数字和r
相反的顺序排序(第一个最高)。要只获得前50个,可以通过管道连接到head -50
,这将获得前一个命令的输出的前50行:
sort -t',' -k2 -nr file | head -50
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句