Как сделать естественную сортировку на выходе uniq -c?
Когда значения count < 10, вывод uniq -c | sort выглядит нормально:
[email protected]:~/testdir$ echo -e "aaa\nbbb\naa\ncd\nada\naaa\nbbb\naa\nccd\naa" > test.txt
[email protected]:~/testdir$ cat test.txt
aaa
bbb
aa
cd
ada
aaa
bbb
aa
ccd
aa
[email protected]:~/testdir$ cat test.txt | sort | uniq -c | sort
      1 ada
      1 ccd
      1 cd
      2 aaa
      2 bbb
      3 aa
но когда counts > 10 и даже в тысячах/сотнях, сортировка беспорядочна, потому что она сортируется по строкам, а не по натуральной целочисленной сортировке:
[email protected]:~/testdir$ echo -e "aaa\nbbb\naa\nnaa\nnaa\naa\nnaa\nnaa\nnaa\nnaa\nnaa\nnaa\nnaa\nnaa\nnnaa\ncd\nada\naaa\nbbb\naa\nccd\naa" > test.txt
[email protected]:~/testdir$ cat test.txt | sort | uniq -c | sort
     10 naa
      1 ada
      1 ccd
      1 cd
      1 nnaa
      2 aaa
      2 bbb
      4 aa
Как сделать вывод натурального сорта "uniq -c" в порядке убывания/сокращения?
