日志快速查询(grep用法)

日志查询 grep

一 查找 未知异常,并显示后面 50 行

grep -A 50 '未知异常' a.log

如果异常太多,也可以用less加上分页查看:

grep -A 50 '未知异常' a.log | less

在 less 视图中,可以:
使用 箭头↑↓ 或 Page Up/Down 键来上下滚动
输入 G 直接翻到末尾,方便快速查看最新的日志
输入 /Exception 继续搜索
按 q 键退出

二 实时看新日志

实时监控 a.log 文件的新增内容,并只显示包含 '未知异常' 的行及其后50行

tail -f a.log | grep -A 50 '未知异常'

加 -i 忽略大小写,防止大小写拼错找不到

三 翻历史日志 or 查压缩日志

在当前目录下查找所有以 .log 结尾的文件,-H 参数可以顺便打印出文件名

grep -H -A 50 '未知异常' *.log

其中 -H 会帮你打印出是哪个文件中出现的问题

查找 .gz 文件(压缩日志):

zgrep -H -A 50 '未知异常' *.gz

zgrep 是专门处理 .gz 的 grep,它的功能和 grep 完全一样,无需手动解压,直接开整!

四 统计异常数量(快速判断异常是否频繁)

有时候你需要知道某个异常到底出现了多少次,是偶发还是成灾,使用 grep -c(count):

grep -c '未知异常' a.log

如果你要统计所有日志里的数量:

grep -c '未知异常' *.log
参数 作用
-B N 匹配行之前的 N 行(Before)
-A N 匹配行之后的 N 行(After)
-C N 匹配行上下共 N 行(Context)
-i 忽略大小写
-H 显示匹配的文件名
-r 递归搜索目录下所有文件

列如:

grep -C 25 '未知异常' a.log

docker 容器日志常用查询

 docker logs --tail 1000 -f c4e5164fda8d  | grep -C50 '未知异常'
posted @ 2025-07-31 18:01  王张慧  阅读(27)  评论(0)    收藏  举报