【sed&awk】统计文本中单词的分布

  作者:zhanhailiang 日期:2012-12-14

脚本如下:

zhanhailiang@linux-06bq:~> cat summary.sh
#/bin/sh

sed -e '{s/[.,?:;,/()]\+//g}' $1|awk -f for.awk |sort|uniq -c|awk '{printf("%30s\t%-10d\n", $2, $1);}'

其中for.awk脚本如下:

zhanhailiang@linux-06bq:~> cat for.awk 
{
    for(i = NF; i > 0 && $i ~ /^[a-zA-Z][a-zA-Z.?:\\,]+/; i--) {
        print $i;
    }
};

使用方法如下:

zhanhailiang@linux-06bq:~> ./summary.sh en
                        accept  1         
                           Add  1         
                         adult  2         
                         after  1         
                           air  1         
                           and  6         
                          area  1         
                            as  1         
                     attention  1         
                            be  2         
                      boarding  1         
                          Book  1         
                        booked  1         
                       booking  2         
                       ...   

你可能感兴趣的:(sed)