如何快速截取某段时间内的日志
答案:2 悬赏:30 手机版
解决时间 2021-01-26 19:21
- 提问者网友:我一贱你就笑
- 2021-01-26 01:15
如何快速截取某段时间内的日志
最佳答案
- 五星知识达人网友:你可爱的野爹
- 2021-01-26 01:45
截取一段时间内的log日志可以使用sed命令对log文件进行抽取操作:
1,sed查看某时间段到现在的系统日志:
sed -n '/May 20 17/,$p' /var/log/messages | less
2,sed 截选时间段日志:
假如日志的格式是--
“2015-05-04 09:25:55,606 后面跟日志内容 ”这样的
目标是需要将05-04的09:25:55 和09:28:08 之间的日志截取出来:
使用sed命令如下:
sed -n ‘/2015-05-04 09:25:55/,/2015-05-04 09:28:55/p’ logfile
这样可以精确地截取出来某个时间段的日志。
如果需要截取的日志太大,达到几个G的话,不能去vi打开文件:
根据之前的日志格式,使用正则表达式:
sed -n ‘/2010-11-17 09:[0-9][0-9]:[0-9][0-9]/,/2010-11-17 16:[0-9][0-9]:[0-9][0-9]/p’ logfile
如果没有问题的话,上面就能筛选出指定的时间段的日志。
1,sed查看某时间段到现在的系统日志:
sed -n '/May 20 17/,$p' /var/log/messages | less
2,sed 截选时间段日志:
假如日志的格式是--
“2015-05-04 09:25:55,606 后面跟日志内容 ”这样的
目标是需要将05-04的09:25:55 和09:28:08 之间的日志截取出来:
使用sed命令如下:
sed -n ‘/2015-05-04 09:25:55/,/2015-05-04 09:28:55/p’ logfile
这样可以精确地截取出来某个时间段的日志。
如果需要截取的日志太大,达到几个G的话,不能去vi打开文件:
根据之前的日志格式,使用正则表达式:
sed -n ‘/2010-11-17 09:[0-9][0-9]:[0-9][0-9]/,/2010-11-17 16:[0-9][0-9]:[0-9][0-9]/p’ logfile
如果没有问题的话,上面就能筛选出指定的时间段的日志。
全部回答
- 1楼网友:未来江山和你
- 2021-01-26 03:08
您好,很高兴为您解答。
1 sed使用
sed -n '/2013:15:25:00/,/2013:15:30:00/p' access.log >25-30.log
2 grep使用
grep "2013:15:2[5-9]" access.log >25-30.log
如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】
希望我的回答对您有所帮助,望采纳!
~ o(∩_∩)o~
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯