Ich habe eine Datei mit folgendem Inhalt.
Hi
abcd
Hi
abc
hello
hello
xyz
hello
Ich möchte doppelte Zeilen sowie deren Häufigkeit herausfinden. Die von mir erwartete Ausgabe ist wie folgt.
2 Hi
3 hello
Ich habe bereits den folgenden Befehl verwendet, der mir eine doppelte Zeile nach der anderen liefert (z. B. „Hallo, hallo“, es funktioniert, aber „Hallo, hallo, hallo“, es hat nicht funktioniert).
uniq -d filename
Antwort1
Sie müssen sort
zuerst die Eingabedatei bearbeiten, bevor Sie sie übergeben, uniq
um gleiche Zeilen sequenziell/benachbart zu machen:
sort file.txt | uniq -dc
-c
zählt die Anzahl der Vorkommen wiederholter Zeilen.
Beispiel:
$ sort file.txt | uniq -dc
3 hello
2 Hi
$ sort file.txt | uniq -dc | sort -k1,1n ## Your expected output
2 Hi
3 hello