《Linux 查看匹配内容的前后几行命令》
假如日志文件名为error.log,需要查找的关键字是“系统错误”。
0.先必须了解最基本的命令
# grep '系统错误' info.log //查询日志里带有关键字“系统错误”的日志
# tail -n 10 info.log //查询日志尾部最后10的日志
# tail -n +10 info.log //查询10行之后的所有日志
# head -n 10 info.log //查询日志文件的头10行日志
# head -n -10 info.log //查询日志文件除了最后10的其他所有日志
1.查询日志内包含关键字的命令(英文单引号双引号都行)
# grep '系统错误' info.log
1.1如果需要显示行号就加上-n
# grep -n '系统错误' info.log
2.查询日志内包含关键字的前后几行(5行)
2.1 关键字的后5行
//-A 表示关键字之后,After
# grep -A 5 '系统错误' info.log
2.2 关键字的前5行
//-B 表示关键字之前,Before
# grep -B 5 '系统错误' info.log
2.3 关键字的前后5行
//-C 表示关键字前后,Context
# grep -C 5 '系统错误' info.log
2.4以上操作都可以加-n显示行数
# grep -n -C 5 '系统错误,请联系管理员' info.log
3.从第1000行开始查看10行
//tail -n +1000 表示查询1000以后的日志
//head -n 10 表示在此前基础上查看前10行日志
# cat -n info.log|tail -n +1000|head -n 10
参考:
Linux 查看匹配内容的前后几行和查询某段时间内的日志-CSDN博客