行単位のデータをカウントしてランキングする手順 2011-02-09-2 [Programming] 1行1件のテキストファイル形式のデータに対して、カウントしてランキングする方法は昔からこれ。ほとんどの環境に入っている sort と uniq と cat を使用。 sort FILENAME.txt | uniq -c | sort -nr | cat -n 以下のように alias しとくとよいかも (zsh)。 alias ranking='sort|uniq -c|sort -nr|cat -n' 実行例: perl -le 'for(1..100){print int(rand(5))}' | ranking 1 26 0 2 21 2 3 20 1 4 17 3 5 16 4 ls | cut -c1 | ranking 1 39 a 2 7 t 3 7 m 4 6 s 5 6