码迷,mamicode.com
首页 > 其他好文 > 详细

请大神指导从大日志文件中统计关键字次数的办法

时间:2018-08-27 12:41:37      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:只打开一次   思路   $0   code   大小   aaa   情况   %s   print   

  1. awk ‘NR==FNR{a[$0]=1;next}{if($0 in a)b[$0]++}END{for (i in b)print i,b[i]}‘ filea fileb | sort
  2. 文件A中有若干行数据,每行为一个关键字
    文件B为大日志文件,大小为10G以下

    想着能够统计出文件A中每个关键字在B中的出现次数,例如
    行1,3
    行2,10
    行3,100
    。。。。。

    最笨的办法是逐行读入后用grep,但是太费时间,有没有只打开一次B文件,就能把A中所有行都统计出来的办法呢?
    1. aaa 3
    2. bbb 3
    3. ccc 4
    4. ddd 2
    5. 给个大概的思路你,因为不知道你的文本时怎样的,所以没考虑边界问题,自己根据实际情况改一下吧~

      awk ‘ARGIND==1{a[$0]}ARGIND==2{for(i in a)if($0~i)a[i]++}ARGIND==3{printf "%s,%d\n",$0,a[$0]}‘ a b 

       

请大神指导从大日志文件中统计关键字次数的办法

标签:只打开一次   思路   $0   code   大小   aaa   情况   %s   print   

原文地址:https://www.cnblogs.com/liliuguang/p/9541243.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!