linux 輸出某個文件的單詞出現頻率html
解決方式 linux
cat words.txt |awk '{for(i=1;i<=NF;i++) print $i;}'|sort|uniq -c|sort -r|awk '{print $2,$1;}'
一、讀出文件 cat xxx.txtspa
二、awk 逐行讀入,按空格將每行分割 而後處理 (awk 經常使用命令參考 http://www.javashuo.com/article/p-fsejwybn-n.html)code
awk NF 每一行的單詞數量htm
'{for(i=1;i<= NF;i++)print $i}' 逐行逐詞輸出單詞blog
三、sort 按詞排序,將相同的詞語放在一塊兒排序
四、uniq -c 按詞統計次數ip
五、sort -r 按照第一行 倒敘排序get
六、 awk '{print $2,$1}' 按照格式輸出io
sort 命令參數 http://www.runoob.com/linux/linux-comm-sort.html
參 數: -b 忽略每行前面開始出的空格字符。 -c 檢查文件是否已經按照順序排序。 -d 排序時,處理英文字母、數字及空格字符外,忽略其餘的字符。 -f 排序時,將小寫字母視爲大寫字母。 -i 排序時,除了040至176之間的ASCII字符外,忽略其餘的字符。 -m 將幾個排序好的文件進行合併。 -M 將前面3個字母依照月份的縮寫進行排序。 -n 依照數值的大小排序。 -o<輸出文件> 將排序後的結果存入指定的文件。 -r 以相反的順序來排序。 -t<分隔字符> 指定排序時所用的欄位分隔字符。 +<起始欄位>-<結束欄位> 以指定的欄位來排序,範圍由起始欄位到結束欄位的前一欄位。 --help 顯示幫助。 --version 顯示版本信息
uniq http://www.runoob.com/linux/linux-comm-uniq.html
語法 uniq [-cdu][-f<欄位>][-s<字符位置>][-w<字符位置>][--help][--version][輸入文件][輸出文件] 參數: -c或--count 在每列旁邊顯示該行重複出現的次數。 -d或--repeated 僅顯示重複出現的行列。 -f<欄位>或--skip-fields=<欄位> 忽略比較指定的欄位。 -s<字符位置>或--skip-chars=<字符位置> 忽略比較指定的字符。 -u或--unique 僅顯示出一次的行列。 -w<字符位置>或--check-chars=<字符位置> 指定要比較的字符。 --help 顯示幫助。 --version 顯示版本信息。 [輸入文件] 指定已排序好的文本文件。若是不指定此項,則從標準讀取數據; [輸出文件] 指定輸出的文件。若是不指定此選項,則將內容顯示到標準輸出設備(顯示終端)。