通过脚本实现从日志文件中提取时间最近的几条记录
2013-12-20 17:40
555 查看
需求:得到玩家流失前最后的操作
方案:
1.db中得到创建时间与最后下线时间是同一天的玩家列表
2.得到玩家所有的协议请求记录
3.将协议请求记录反转
4.提取前几条
具体做法:
1.db操作生成lost_user.txt(具体sql省略);
2.grep "cmd" debug201311280000* | grep client | grep -v 2599 > all_proto.txt
3.tac all_proto.txt > all_proto_reverse.txt
4.awk '{cmd="bash ./get_fist_line.sh "$1;system(cmd)}' lost_user.txt
--------------------------------------------------------------------------------------
备注:
get_fist_line.sh的内容:
#!/bin/bash
grep $1 -m1 all_proto_reverse.txt >> result.txt #去最后一条记录,这里-m后可以跟n
方案:
1.db中得到创建时间与最后下线时间是同一天的玩家列表
2.得到玩家所有的协议请求记录
3.将协议请求记录反转
4.提取前几条
具体做法:
1.db操作生成lost_user.txt(具体sql省略);
2.grep "cmd" debug201311280000* | grep client | grep -v 2599 > all_proto.txt
3.tac all_proto.txt > all_proto_reverse.txt
4.awk '{cmd="bash ./get_fist_line.sh "$1;system(cmd)}' lost_user.txt
--------------------------------------------------------------------------------------
备注:
get_fist_line.sh的内容:
#!/bin/bash
grep $1 -m1 all_proto_reverse.txt >> result.txt #去最后一条记录,这里-m后可以跟n
相关文章推荐
- Android手机分辨率基础知识(DPI,DIP计算)
- iframe弹层插件
- 求一组整数数组中的连续子序列和的最大值
- android权限
- Android Intent 使用 Parcel 反序列化出错.
- Eclipse中调试Android技巧
- 批量插入处理
- 搜狐将新闻客户端进行到底 给钱抢人 自媒体的春天?
- 机器学习所需的数学基础
- 华为HG8204 光纤猫的路由设置
- 菜鸟 ubuntu下安装scipy全过程 (主要是安装atlas)
- 实现Windows Phone 8中ListBox的分页加载
- ios scan-build实践
- node-webkit读取json文件
- scanf("%c",&ch)直接跳过的问题
- Ubuntu Server 10.04修改Apache的默认目录的方法
- C# WinFrom全屏
- 我们如何通过网络来自学SEO优化呢?
- 若一个素数的反序数仍为素数,则称为可逆素数。求10000以内的所有可逆素数。
- 海康威视视频监控demo 源码+库文件