LINUX中如何使用关键字进行日志查找

一:关键字相关

  1、技巧:根据关键字查询日志

      1. 单个文件可以使用vi或vim编辑器打开日志文件,使用编辑器里的查找功能。在查看模式下,符号/后面跟关键字向下查找,符号?后面跟关键字向上查

    找,按n查找下一个,按N查找上一个。

      2. 多个文件可以使用grep命令,比如 grep ERROR /var/log/messages*。会把匹配到ERROR这个关键字的行和所在的日志文件直接输出到屏幕。

      3. 还可以使用cat命令后面使用grep过滤等方法,不如上面两个实用。上面两个较常用。

  2、常用到的命令

   1. VI:单个文件可以使用vi或vim编辑器打开日志文件,使用编辑器里的查找功能。在查看模式下,符号/后面跟关键字向下查找,符号?后面跟关键字向上                 查找,按n查找下一个,按N查找上一个。

   2. grep命令:cat 1.log | grep key  可以写为: grep key 1.log 

    根据字符串查询日志中关键词出现的位置:

1
cat -n 日志文件| grep 'keyword' <br>例:cat -n 1.log | grep 'keyword'

    检索日志,并显示该条日志的前后N(10)行记录:

1
cat 日志文件 | grep -n -B10 -A10 "关键字"

二:时间相关

  1、查看某段时间内的日志: sed -n '/起始时间/,/结束时间/p' 日志文件,

  2、查看某段时间内的关键字日志:sed -n '/起始时间/,/结束时间/p' 日志文件| grep ‘keyword’

例:

1
sed -n ‘/2018-06-21 14:30:20/,/2018-06-21 16:12:00/p’ catalina.out | grep ‘keyword’

三:查看行数

tail  -n  10  日志文件   查询日志尾部最后10行的日志;

tail -n +10 日志文件    查询10行之后的所有日志;

head -n 10  日志文件  查询日志文件中的头10行日志;

head -n -10  日志文件  查询日志文件除了最后10行的其他所有日志;

四:备注

如果我们查找的日志很多,打印在屏幕上不方便查看, 有两个方法:

(1)、使用more和less命令, 如: cat -n test.log |grep "地形" |more     这样就分页打印了,通过点击空格键翻页

(2)、使用 >xxx.txt 将其保存到文件中,到时可以拉下这个文件分析.如:

1
cat -n test.log |grep "地形"  >xxx.txt
posted @   无渊  阅读(17117)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
返回顶端
点击右上角即可分享
微信分享提示
never give up