awk 计算access

1、日志备份位置
   10.105.20.101:/opt/data/syslog/accesslog/ws/bak

2、总数处理
  awk 从1开始算起,$0表示1行
  //$10为machineid $14为userid $16 为usertype
  UV: 
     cat accessStat.log.* |awk -F '\t' '{print $10}' |sort |uniq|wc -l
     或 cat  accessStat.log.2014-11-04 | grep '/room/159' |awk '{a[$10]++}END {for (j in a) print a[j],j}'  | wc -l 
  login_count:
     cat accessStat.log.* |awk -F '\t' '{if($16 == "1"){print $10}}' |sort |uniq|wc -l

3、分频道处理
  如计算159频道
  cat accessStat.log.* | grep room/159 > 159.log
  UV: 
     cat 159.log |awk -F '\t' '{print $10}' |sort |uniq|wc -l
  login_count:
     cat 159.log |awk -F '\t' '{if($16 == "1"){print $10}}' |sort |uniq|wc -l
     
  update t_interactive_room_data_stat set chat_times=9973,horn_times=57 where stat_date = '2014-10-28' and room_id =159   



4、文件重合部分
grep -Ff 1IDFA.csv 2IDFA20160119.csv > 3IDFA.csv

猜你喜欢

转载自wangqiaowqo.iteye.com/blog/2152588
awk