美文网首页
awk统计线上日志(直播打赏排行榜)

awk统计线上日志(直播打赏排行榜)

作者: 联想桥南 | 来源:发表于2017-09-25 11:53 被阅读0次

    工作中有统计日志需求,比如ip出现的次数,某个id直播打赏金额的排行榜如图。

    例子A B C打赏金额的排行榜

    cat live.log |awk -F '|' '{sum[$1]+=$2}END{for(i in sum)print i"\t"sum[i]}'

    ip出现的次数

    cat ip.log |awk -F '|' '{sum[$1]+=1}END{for(i in sum)print i"\t"sum[i]}'

    awk 说明:

    语法 awk '{pattern + action}' {filenames}  -F 分隔符,所有操作可在'{}'解决

    这里主要是数组的语法:因为awk中数组的下标可以是数字和字母,数组的下标通常被称为关键字(key)。值和关键字都存储在内部的一张针对key/value应用hash的表格里。所以awk中的数组用来从记录中收集信息,可以用于计算总和、统计单词以及跟踪模板被匹配的次数等等。

    上边IP和ID都是被存储在了下标key中,value存次数。

    相关文章

      网友评论

          本文标题:awk统计线上日志(直播打赏排行榜)

          本文链接:https://www.haomeiwen.com/subject/zvvrextx.html