awk的真实使用案例及区间分布统计工具histogram.py

本文通过实例展示了如何使用head、grep、awk、sort等工具进行日志筛选、列和求和、数据排序与去重,以及Python库histogram.py进行区间分布统计。涉及了Android、iOS、CFNetwork等技术领域,并探讨了数据处理、统计分析和文件操作技巧。
摘要由CSDN通过智能技术生成
  • head -n 100 xxx.log 查看日志前100行
  • head -n 100 xxx.log | grep "android"|grep "xxxx.zip" 管道搜索
  • head -n 10000000 10.log | grep "android"|grep "xxxx.zip" | awk '{sum += $11};END{print sum}' 求$11列的和
  • head -n 100 10.log | grep "CFNetwork" | awk -F \" '{print $2,$6}' | sort -nr ,
    • 按数值降序排列,-n 按数值排序(避免10小于2的情况),-r 降序
    • awk -F \" 按双引号来分割
  • head -n 100 10.log | grep "CFNetwork" | awk -F \" '{print $2,$6}' | sort|uniq -c ,
    • uniq -c在每列旁边显示该行重复出现的次数;
    • uniq 去重 
    • awk -F '"msg":' '{print substr($2,2,3)}' inner.txt  | sort -nr | uniq
      526
      270
      201
      123

查某个数据的区间分布,可以借助python的histogram.py来处理

  • cat 506.txt | awk '($2=="2"){print $4}' | histogram.py -B 0,500,800,1000,1500,2000,3000,5000 --percent 第二列等于2,打印第四列,区间分布统计
  • cat 506.txt | awk '($2==2 && $4>2048){print $1,$4,$5}' | sort -n -r -k2 > android_506.txt 第二列等于2,第四列大于2048,打印第一,四,五列;按新的第二列(原第四列)数字降序排列,输出文件
  • cat 10.log | awk '($15 ~/iOS/ && $7=="xxxx.zip"){print $7,$15}'
  • tail -n 100000 10.log | awk '(($15 ~/iOS/) && $7=="xxxx.zip"){print $7,$15}' |wc -l
  • tail -n 100 10.log | awk '($15 ~/iOS/){print $14}'
  • tail -n 100000 10.log | awk '(($15 ~/iOS/) && $7=="xxxx.zip"){print $7,$15}' |wc -l

wc -l输出数量

histogram.py源码地址:https://github.com/bitly/data_hacks


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值