題目描述
寫一個 bash腳本以統計一個文本文件 nowcoder.txt 中每個單詞出現的個數。
為了簡單起見,你可以假設:
nowcoder.txt只包括小寫字母和空格。
每個單詞只由小寫字母組成。
單詞間由一個或多個空格字符分隔。
示例:
假設 nowcoder.txt 內容如下:
welcome nowcoder
welcome to nowcoder
nowcoder
你的腳本應當輸出(以詞頻升序排列):
to 1
welcome 2
nowcoder 3
說明:
不要擔心個數相同的單詞的排序問題,每個單詞出現的個數都是唯一的。
思路:
把文本換成每個單詞占用一行, 排序, 然后去重得到每個單詞出現次數, 再排序, 最后 awk 輸出即可
cat nowcoder.txt | tr -s ' ' '\n' | sort | uniq -c | sort | awk '{print $2" "$1}'
# OR
# cat nowcoder.txt | tr -s ' ' '\n' | sort | uniq -c | sort | awk '{print $2,$1}'