linux脚本怎么提取nginx日志的前10分钟数据。

linux脚本提取nginx日志的前10分钟数据。shell脚本怎么写?就是以我执行脚本的时间为准,向前推10分钟内日志的数据提取出来。... linux脚本提取nginx日志的前10分钟数据。shell脚本怎么写?
就是以我执行脚本的时间为准,向前推10分钟内日志的数据提取出来。
展开
 我来答
百度网友f1edbb8
推荐于2016-04-27 · TA获得超过1048个赞
知道小有建树答主
回答量:1159
采纳率:0%
帮助的人:523万
展开全部
#!/bin/bash
#By Spinestar
sys_time_h=`date +%M`
log_time_h=$[ $sys_time_h - 10 ]
read -p "Please input your log_file_path" log_path
awk '$4 ~ /'^$log_time_h'/,/'^$sys_time_h'/{print $0}' $log_path

不确定你的日志格式,没法完全写出,这个是如果时间在第四列,则根据第四列来输出,这个应该输出的是每一个小时的当前分钟前10分钟-当前时间的

你得发一部分日志格式,得看着日志时间格式来写

ywb521hlj
2013-09-06 · TA获得超过164个赞
知道小有建树答主
回答量:306
采纳率:0%
帮助的人:174万
展开全部
不知道你要查的是那种类型数据 以下面这条语句为例子
2013/03/27 17:27:06 [emerg] 766#0: host not found in upstream "file" in /opt/web_app/nginx/conf/nginx.conf:168

先通过 head 日志 取出日志第一个带有时间的日志信息,通过awk取出时间的 分钟部分 取出分钟部分加10 然后通过变量赋值 在文件中查找该时间点的日志是在多少行 之后 head这些行就可以了。。。
略复杂 应该有更好的办法
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式