Você pode fazer:
tr -s ' ' <file.txt | tr ' ' '\n' | sort -n | uniq -c | sort -k1,1rn -k2,2rn | sed 's/^ \+//; s/ /=/'
-
tr -s ' '
fará espaços sucessivos em um -
tr ' ' '\n'
converterá espaços em novas linhas -
sort -n
fará o% numéricosort
-ing -
uniq -c
fará a contagem -
sort -k1,1rn -k2,2rn | sed 's/^ \+//; s/ /=/'
formata a saída da maneira que você deseja.
Exemplo:
$ tr -s ' ' <file.txt | tr ' ' '\n' | sort -n | uniq -c | sort -k1,1rn -k2,2rn | sed 's/^ \+//; s/ /=/'
12=44
12=22
10=32
8=43
7=20
6=33
6=29
6=26
6=19
6=18
6=17
6=13
6=8
6=6
5=40
5=38
5=31
5=27
5=24
5=23
5=9
5=5
5=3
4=42
4=37
4=36
4=35
4=28
4=21
4=16
4=14
4=12
4=11
3=45
3=39
3=34
3=10
3=2
3=1
2=41
2=25
2=15
2=7
2=4