Linux shell 編程之 sort uniq 命令統計單詞詞頻

命令

  • 統計詞頻需要uniq和sort配合使用
  • uniq
    • 實現去重操作,但僅僅和臨近行的元素比較,那麼如果元素是打散的不在連續行呢?這就需要sort操作
    • uniq -c -c表示將對應頻次顯示出來
  • sort
    • 可實現排序,這裏就能讓元素按照順序排列,讓相同元素臨近
    • sort -nr -n表示數值排序,-r表示逆序
  • 然後在此基礎上,進行uniq操作,即可得到每個元素對應頻次
  • 一般爲了美觀,可以再加一個sort操作,讓頻次按照順序排列

實踐

tmp.txt 文本如下,將統計每個字段的頻次

0-297:294
0-399:222
0-297:294
0-140:138
0-367:267
0-399:222
0-65:179
0-81:82
0-100:179
0-586:277
0-367:267
0-423:582
0-367:267
0-81:82
0-410:72
0-100:179
0-240:277
0-583:582
0-586:277
0-81:82
0-423:582
0-586:277
0-367:267
0-410:72
0-100:179
0-367:267
0-410:72
0-100:179
0-240:277
0-586:277
0-81:82
0-410:72
0-100:179
0-240:277
0-81:82
0-100:179
0-586:277
0-140:138
0-81:82
0-100:179
0-586:277
0-81:82
0-586:277
0-410:72
0-140:138
  • 代碼
cat tmp.txt | sort  | uniq -c | sort -nr
  • 結果
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章