Eu tenho um arquivo que contém o seguinte conteúdo.
Hi
abcd
Hi
abc
hello
hello
xyz
hello
Quero descobrir linhas duplicadas e quantas vezes elas estão se repetindo. Minha saída esperada é a seguinte.
2 Hi
3 hello
Eu já usei o seguinte comando, que me dá linhas duplicadas, uma após a outra (ou seja, Olá, Olá, funciona, mas Olá, oi, Olá, não funcionou)
uniq -d filename
Responder1
Você precisa sort
primeiro acessar o arquivo de entrada antes de passar para uniq
para tornar as mesmas linhas sequenciais/adjacentes:
sort file.txt | uniq -dc
-c
contará o número de ocorrências de linhas repetidas.
Exemplo:
$ sort file.txt | uniq -dc
3 hello
2 Hi
$ sort file.txt | uniq -dc | sort -k1,1n ## Your expected output
2 Hi
3 hello