Yanıtlar:
Bunu anladım; biri uniqbireyin seçenekleri olan -c'oluş sayısına göre önek hatları',:
$ uniq -c
sort | uniq
A \ A \ A \ B \ A \ CC, sadece çıktısını uniq -cgösterir A 3ve sonra gösterirdi A 1. Önce sıralama, tüm özdeş satırların birlikte gruplandırılmasını garanti eder
Buraya benzer bir problemle geldim. Bundan biraz daha ileri bir komutu bir araya getirmeyi başardım, umarım diğerleri için faydalıdır.
Steven D'nin yukarıdaki açıklamalarda dediği gibi, uniqsadece bitişik tekrarlayan satırları sayar, bu yüzden önce satırları sıralamanız gerekir. Ondan sonra benzersiz çizgileri bulduktan sonra tekrar sıralayın, böylece en çok ortaya çıkan çizgiler en üsttedir.
sort file.txt | uniq -c | sort -nr > output.txt
Çıktı dosyaya yönlendirilir output.txt. Sonuçları komut satırında görmek istiyorsanız, yönlendirmeyi kaldırın ve en son sort -nsatırın en alt satırda, yani kesinlikle ekranda olacak şekilde son komutu değiştirin .
cat file.txt | sortsadece birlikte sort file.txt. :)
catdaha ilginç bir şeyle hızlıca değiştiremeyeceğinizdir . Bilirsin, biliyorsun, hayır yok cat.
< file.txt sort | uniq -c. Bu düzenlemesi kolaydır ve gereksiz olanı engeller cat.
uniq -c filename.txt | sed 's/[^0-9]*\\([0-9]\+\\) \\(.*\\)/\2 \1/'