liunx日志查询常用命令总结


日志查询常用命令速查表


1. 实时监控日志
命令 说明 示例
tail -f 实时追踪日志末尾 tail -f catalina.out
tail -f + grep 过滤实时关键词 `tail -f app.log
multitail 多文件同时监控(需安装) multitail -i app.log -i api.log

2. 关键词搜索
命令 说明 示例
grep 基础关键词搜索 grep "NullPointer" catalina.out
grep -i 忽略大小写 grep -i "error" app.log
grep -C 显示上下文 grep -C 10 "OOM" app.log(前后10行)
grep -E 正则匹配 `grep -E "ERROR
zgrep 搜索压缩日志 zgrep "404" access.log.gz

3. 时间范围过滤
命令 说明 示例
sed 按时间段截取日志 sed -n '/2023-10-25 14:00:/,/2023-10-25 15:00:/p' app.log
awk 时间+关键词组合过滤 awk '/14:00:/,/15:00:/ && /ERROR/' app.log
journalctl 系统日志时间过滤(Systemd) journalctl --since "2023-10-25 14:00" --until "15:00"

4. 日志统计与分析
命令 说明 示例
wc -l 统计行数 `grep "ERROR" app.log
awk 按列统计 awk '{count[$3]++} END {for(k in count) print k, count[k]}' app.log(统计日志级别)
`sort uniq` 去重统计

5. 分页与查看
命令 说明 示例
less 分页浏览(支持搜索) less app.log → 按 / 搜索,Shift+G 跳末尾
head / tail 查看首尾部分 tail -n 100 app.log(末尾100行)
lnav 高级日志查看器(时间着色、语法高亮) lnav app.log(需安装)

6. 多文件与压缩日志
命令 说明 示例
grep -r 递归搜索目录 grep -r "Timeout" /var/log/
find + xargs 多文件联合搜索 `find /var/log -name "*.log"
zcat 查看压缩文件内容 `zcat app.log.1.gz

7. 高频组合命令
  1. 快速定位错误堆栈

    bash 复制代码
    grep -A 50 -B 20 "Caused by:" app.log   # 显示异常上下50行
  2. 统计接口响应时间TOP10

    bash 复制代码
    awk '{print $7, $NF}' access.log \| sort -k2 -nr \| head -10
  3. 按小时统计错误数量

    bash 复制代码
    awk -F: '/ERROR/ {count[$2]++} END {for(h in count) print h":00", count[h]}' app.log

场景示例

问题

用户反馈14:30左右接口返回500错误,需快速定位。

排查步骤
  1. 按时间过滤访问日志

    bash 复制代码
    sed -n '/2023-10-25 14:20:/,/2023-10-25 14:40:/p' access.log > tmp.log
  2. 搜索500状态码

    bash 复制代码
    grep " 500 " tmp.log   # 定位异常请求路径
  3. 关联应用日志

    bash 复制代码
    grep "2023-10-25 14:30" app.log \| grep -C 30 "NullPointer"

工具推荐

  • 文本处理三剑客grep(搜索)、sed(替换/截取)、awk(分析)
  • 高级工具
    • lnav:日志查看神器(支持SQL查询日志)
    • jq:JSON日志分析(如K8s环境)
    • ELK:大规模日志聚合分析
相关推荐
coder!mq37 分钟前
说几个常见的语法糖?
java·开发语言·算法
gugucoding39 分钟前
38. 【Java】Stream API(下):高级操作与性能
java·开发语言
SamChan901 小时前
PDF翻译API的JWT签名鉴权与速率限制设计:安全实战指南
网络·安全·pdf
心平气和量大福大1 小时前
android-实例-蒲公英-更新与安装-5-签名与生成APK
android·java·开发语言
雾时之林1 小时前
Linux--软件管理、源码包安装
linux·服务器·数据库
xiaoxiangsiyan2 小时前
HCIA 网络技术基础核心模块详解
运维·网络·网络协议·tcp/ip·运维开发·网络基础
952362 小时前
Spring-cloud配置中心
java·spring·spring cloud·微服务
ydd1001002 小时前
寻找两个正序数组的中位数 Java 题解,二分分割详解
java·开发语言
AGCSDNl2 小时前
葛姓的来源
网络
真上帝的左手3 小时前
10. 软件设计&架构-Spring Security 7 整合CAS SSO 单点登录
java·spring·架构·sso