Linux查看日志常用命令总结

在 Linux 中查看日志有多种强大的命令和工具,根据你的具体需求(如实时跟踪、搜索、过滤等)可以选择不同的命令。以下是一些最常用和高效的方法:


1. 基础查看命令

tail - 查看日志尾部(最常用)

  • 实时跟踪最新日志

    bash 复制代码
    tail -f /var/log/syslog        # 实时跟踪文件变化(默认10行)
    tail -f -n 20 /var/log/syslog  # 实时跟踪并显示最后20行
  • 查看最后100行

    bash 复制代码
    tail -n 100 /var/log/nginx/access.log

head - 查看日志头部

bash 复制代码
head -n 50 /var/log/syslog   # 查看前50行

cat - 全部输出(适合小文件)

bash 复制代码
cat /var/log/syslog          # 一次性显示全部内容(大文件慎用)

less / more - 分页查看(推荐大文件)

bash 复制代码
less /var/log/syslog         # 支持上下翻页、搜索(按 `/` 搜索,`q` 退出)
more /var/log/syslog         # 基本分页(空格翻页)

2. 高级过滤与搜索

grep - 关键字过滤

bash 复制代码
grep "ERROR" /var/log/syslog                 # 搜索包含 "ERROR" 的行
grep -i "error" /var/log/syslog              # 忽略大小写
grep -C 3 "error" /var/log/syslog            # 显示匹配行及前后3行
grep -v "INFO" /var/log/syslog               # 排除包含 "INFO" 的行

awk - 按列过滤

bash 复制代码
awk '{print $1}' /var/log/access.log         # 输出第一列(如IP地址)
awk '$9 == 500 {print $7}' /var/log/access.log  # 找出状态码500的请求路径

sed - 流编辑器

bash 复制代码
sed -n '10,20p' /var/log/syslog              # 只输出第10到20行

3. 组合命令(高效排查)

实时跟踪并过滤关键字

bash 复制代码
tail -f /var/log/nginx/access.log | grep "404"

统计错误出现的次数

bash 复制代码
grep -c "ERROR" /var/log/syslog

查看某个时间段的日志

bash 复制代码
sed -n '/2023-10-27 14:00:00/,/2023-10-27 15:00:00/p' /var/log/syslog

4. 专用日志工具

journalctl - systemd 日志(现代Linux发行版)

bash 复制代码
journalctl -f                      # 实时跟踪系统日志
journalctl -u nginx.service        # 查看nginx服务的日志
journalctl --since "2023-10-27 14:00:00" --until "2023-10-27 15:00:00"

logrotate - 日志轮转配置

(不是直接查看日志,但管理日志分割)


5. 高级工具(如需复杂分析)

  • multitail:同时监控多个日志文件(需安装)
  • lnav:日志文件浏览器(支持语法高亮、SQL查询)
  • GoAccess:实时Web日志分析工具

总结推荐

场景 推荐命令
实时跟踪日志 tail -fjournalctl -f
关键词搜索 grep "关键词" [文件]
大文件浏览 less [文件]
按时间筛选 journalctl --since "时间"sed
结构化分析 awk
相关推荐
CodeSheep7 小时前
VS 2026 正式发布,王炸!
前端·后端·程序员
无奈何杨7 小时前
CoolGuard事件查询增加策略和规则筛选,条件结果展示
前端·后端
梦里不知身是客117 小时前
正则表达式常见的介绍
前端·javascript·正则表达式
初学小白...7 小时前
HTML知识点
前端·javascript·html
鹏多多7 小时前
flutter睡眠与冥想数据可视化神器:sleep_stage_chart插件全解析
android·前端·flutter
艾小码7 小时前
Vue3 脚本革命:<script setup> 让你的代码简洁到飞起!
前端·javascript·vue.js
IT_陈寒8 小时前
Python 3.12新特性解析:10个让你代码效率提升30%的实用技巧
前端·人工智能·后端
故厶8 小时前
webpack实战
前端·javascript·webpack
_果果然8 小时前
你真的懂递归吗?没那么复杂,但也没那么简单
前端·javascript
菜泡泡@9 小时前
仓库地图vue-grid-layout
前端·javascript·vue.js