shell和perl对文件单词的频数统计

perl:

1 #!/usr/bin/perl -w
2   open(MY,"word.txt")or die " $!";
3   my %tmp;
4   map { $tmp{$_}++ }
5   map { chomp; split /\s|,|\.|:/,$_ } ;
6   close MY;
7   print "$_\t$tmp{$_}\n"
8   foreach (sort { $tmp{$b} <=> $tmp{$a} } keys %tmp);

shell:

sed 's/\n/\t/g' word.txt|sed 's/,/\t/g'|sed 's/\./\t/g'|awk '{for(i=1;i<=NF;++i)++S[$i]}END{for(a in S)print a"\t"S[a]}'
——————————————————————————————————————————

 

posted on 2013-12-13 10:43  三川  阅读(343)  评论(0编辑  收藏  举报