假设我有一个文件,其中包含:
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
以便最常用的行位于底部,即肯定仍在屏幕上。