linf 发表于 2015-12-28 14:08:11

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}'
——————————————————————————————————————————
  
页: [1]
查看完整版本: shell和perl对文件单词的频数统计