awk统计文件中某关键词出现次数

1、统计文件test.txt中第2列不同值出现的次数

awk '{sum[$2]+=1}END{for(i in sum)print i"\t"sum[i]}'  test.txt

如文件test.txt第2列的值为"00""01"或"02",执行结果如下:

[root@localhost cc]# cat test.txt
a 00
b 01
c 00
d 02
[root@localhost cc]# awk '{sum[$2]+=1}END{for(i in sum)print i"\t"sum[i]}' test.txt
00 2
01 1
02 1
[root@localhost cc]#

2、如只统计文件test.txt中第2列"00"或"01"出现的次数,命令可写为

awk '{if($2=="00") ++sum1;if($7=="01") ++sum2}END{print "00""\t"sum1"\n""01""\t"sum2}' test.txt

执行结果如下:

[root@localhost cc]# awk '{if($2=="00") ++sum1;if($2=="01") ++sum2}END{print "00""\t"sum1"\n""01""\t"sum2}' test.txt
00 2
01 1

《完》

posted @ 2016-11-02 10:24  chongchong88  阅读(19631)  评论(0编辑  收藏  举报