计算文件中每一行出现的次数

计算文件中每一行出现的次数

假设我有一个文件,其中包含:

A
A
A
B
CC

我想要这样的输出:

A 3
B 1
CC 1

答案1

我想到了;uniq的选项之一是,-c对于“按出现次数添加前缀行”:

$ uniq -c

答案2

我刚来这里也遇到了类似的问题。由此,我设法组合了一个稍微更高级的命令,我希望对其他人有用。

正如 Steven D 在上面的评论中所说,uniq仅计算相邻的重复行,因此您需要首先对行进行排序。之后,我们找到唯一的行,然后再次排序,以便最常出现的行位于顶部。

sort file.txt | uniq -c | sort -nr > output.txt

输出被重定向到文件中output.txt。如果您只想在命令行上查看结果,请删除重定向并将最后一个命令更改为,sort -n以便最常用的行位于底部,即肯定仍在屏幕上。

相关内容