查找最频繁的行并计算它们

Dem*_*ger 1 bash awk

我怎样才能在这样的列表中计算出现的次数:

onion
apple
kiwi
orange
kiwi
orange
onion
kiwi
kiwi
orange
Run Code Online (Sandbox Code Playgroud)

我需要列出每个唯一线发生的次数,例如.

4 kiwi
3 orange
2 onion
1 apple
Run Code Online (Sandbox Code Playgroud)

行也可能包含特殊字符和数字.

Aif*_*Aif 7

我会在管道中使用一堆unix命令:

$ sort sample| uniq -c | sort -nrk 1
   4 kiwi
   3 orange
   2 onion
   1 apple
Run Code Online (Sandbox Code Playgroud)

如果需要限制输出,可以head -n <<size>>在命令行的末尾使用.

Uniq需要对输入文件进行排序,这就是我首先调用sort名为"sample"的文件的原因.之后,我们希望通过反向数字顺序在第一列上排序输出.