使用shell統計字符串出現的次數,並從大到小進行排序顯示

需求說明:對文檔中的字符串進行統計,並進行排序後(從大到小),顯示出前2條記錄
構造的test.txt內容以下:
a 12332
a 2323
a 234234
b 232
c 23432
c 34

統計並排序的方法:
方法1:
[mengfeiyang@qadev01v ~]$ awk '{a[$1]++} END {for(i in a){print i,a[i] | "sort -r -k 2"}}' test.txt > r.txt
執行結果:
a 3
c 2
b 1

方法2:
[mengfeiyang@qadev01v ~]$ cat test.txt | awk '{print $1}' |sort |uniq -c |sort -rn
執行結果:
   3 a
   2 c
   1 b

打印前兩條記錄的方法以下:
[mengfeiyang@qadev01v ~]$ head -2 r.txt     //方法1顯示前兩行
a 3
c 2
[mengfeiyang@qadev01v ~]$ head -n 2 r.txt   //方法2顯示前兩行
a 3
c 2
使用awk命令:awk 'FNR<=2' r.txt    //方法3顯示前兩行
相關文章
相關標籤/搜索