Bash 找出最常出现的行并计算它们

Bash 找出最常出现的行并计算它们,bash,awk,Bash,Awk,我如何计算该列表中出现的次数,比如: onion apple kiwi orange kiwi orange onion kiwi kiwi orange 我需要得到一个列表,每个独特的行发生了多少次,例如 4 kiwi 3 orange 2 onion 1 apple 另外,行可能包含特殊字符和数字。我将在管道中使用一组unix命令: $ sort sample| uniq -c | sort -nrk 1 4 kiwi 3 orange 2 onion 1 app

我如何计算该列表中出现的次数,比如:

onion
apple
kiwi
orange
kiwi
orange
onion
kiwi
kiwi
orange
我需要得到一个列表,每个独特的行发生了多少次,例如

4 kiwi
3 orange
2 onion
1 apple

另外,行可能包含特殊字符和数字。

我将在管道中使用一组unix命令:

$ sort sample| uniq -c | sort -nrk 1
   4 kiwi
   3 orange
   2 onion
   1 apple
如果需要限制输出,可以在命令行末尾使用
head-n


Uniq需要对输入文件进行排序,这就是为什么我首先对名为“sample”的文件调用
sort
。之后,我们希望输出在第一列按相反的数字顺序排序。

我将在管道中使用一组unix命令:

$ sort sample| uniq -c | sort -nrk 1
   4 kiwi
   3 orange
   2 onion
   1 apple
如果需要限制输出,可以在命令行末尾使用
head-n


Uniq需要对输入文件进行排序,这就是为什么我首先对名为“sample”的文件调用
sort
。之后,我们希望输出按照与数字相反的顺序排列在第一列。

这正是我们所要求的,简单而优雅的方式。谢谢你的帮助,Aif!正是所要求的,简单而优雅的方式。谢谢你的帮助,Aif!好吧,你是对的,从常识上讲,我的意思是我需要比较线条和其中可能出现的一切。好吧,你是对的,从常识上讲,我的意思是我需要比较线条和其中可能出现的一切。