Linux 根据某个时间段查看日志 {查看某时间段内的日志}

在系统应用集中部署的时候,经常会查看一些日志,有时候因为日志文件太大,不能去vi打开文件,而难以定位,因此获取某段时间的日志是对维护人员是非常关键的事情。

Linux 命令:

① sed -n ‘/开始时间/,/结束时间/p’  logfile[日志文件名]  //表示查询开始-结束时间之间的日志行

② sed -n ‘/xxx/p’   表示输出 包含xxx的日志行

③ sed -n ‘/xxx\|yyy/p’  表示输出 包含xxx或包含yyy的日志行

注意:

p表示,满足前面的条件就 打印输出
!p表示,满足前面的条件就 不打印输出

例如:sed -n ‘/2020-05-30 00:01:28/,/2020-05-30 00:05:50/p’ log_file_catalina.out

上面的命令就能筛选出指定的时间段内的日志。

// 1. 查询2020-05-30 00:05:50这个时间点的日志
[root@oradb ~]# sed -n '/2020-05-30 00:05:50/p' log_file_catalina.log

// 2. 查询2020-05-30 00:05:50并且包含abc的日志,这里用到正则 .* 表示任意字符有0个或多个
[root@oradb ~]# sed -n '/2020-05-30 00:05:50.*abc/p' log_file_catalina.log

// 3. 查询2021-10-10 00:11 和 2021-10-10 00:13 两个时间点的日志行,
//    这里用到正则 | 表示或的意思,注意|为特殊字符需要转义 \|
[root@oradb ~]# sed -n '/2020-05-30 00:04:50\|2020-05-30 00:05:50/p' log_file_catalina.log

    原文作者:zuihongyan518
    原文地址: https://blog.csdn.net/zuihongyan518/article/details/106438199
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞