歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

統計特定文件中的詞頻

統計特定文件中的詞頻   查找文件中使用的單詞的頻率是一件很有意思的事情,下面,我們利用 關聯數組,awk,sed,grep 等不同的方式來解決問題。 首先,我們需要一個測試用的文本,保存名為  word.txt 內容如下: [python]  Word used   this  counting   this     接下來需要編寫Shell腳本程序,如下所示: [python]  #!/bin/bash   #Name: word_freq.sh   #Description: Find out frequency of words in a file      if [ $# -ne 1 ];   then       echo "Usage: $0 filename";       exit -1   fi      filename=$1      egrep -o "\b[[:alpha:]]+\b" $filename | \      awk '{ count[$0]++ } END{ printf("%-14s%s\n","Word","Count") ; \    for(ind in count) { printf("%-14s%d\n",ind,count[ind]); } }'      工作原理介紹: 1.egrep -o "\b[[:alpha:]]+\b" $filename 用來只輸出單詞,用 -o 選項打印出由換行符分割的匹配字符序列,這樣我們就可以在每行中列出一個單詞 2.\b 是單詞邊界標記符。[:alpha:] 是表示字母的字符類 3.awk命令用來避免對每一個單詞進行迭代   下面給出運行的截圖:  
Copyright © Linux教程網 All Rights Reserved