温馨提示×

怎么过滤debian message内容

小樊
34
2026-10-15 18:07:12
栏目: 智能运维

在 Debian 系统中,“message”一般指 系统日志 / 内核日志消息(如 /var/log/messages、/var/log/syslog、dmesg 输出等)。下面按常见场景给你几种实用的“过滤方法”。


一、过滤 dmesg(内核消息)

1️⃣ 按关键字过滤

dmesg | grep usb

只看 USB 相关消息。

2️⃣ 按级别过滤(推荐)

dmesg --level=err,warn

常见级别:

  • emerg
  • alert
  • crit
  • err
  • warn
  • notice
  • info
  • debug

3️⃣ 实时监控

dmesg -w | grep eth0

二、过滤 /var/log/messages 或 /var/log/syslog

1️⃣ 使用 grep

grep "error" /var/log/messages

2️⃣ 按时间过滤

grep "Aug 15 10:" /var/log/messages

3️⃣ 排除某些内容

grep -v "dhcp" /var/log/syslog

三、使用 journalctl(systemd 系统)

Debian 新版本默认用 systemd,日志由 journalctl 管理。

1️⃣ 按服务过滤

journalctl -u ssh

2️⃣ 按优先级(重要)

journalctl -p err

等价于 error 及以上。

3️⃣ 按时间

journalctl --since "2024-08-15 10:00" --until "2024-08-15 11:00"

4️⃣ 实时过滤

journalctl -f | grep nginx

四、高级:用 awk / sed 精细过滤

提取某列

dmesg | awk '{print $1, $2, $5}'

多条件过滤

journalctl | awk '/error/ && /network/'

五、图形化 / 工具(可选)

  • less +F /var/log/syslog
  • lnav(日志浏览器)
apt install lnav
lnav /var/log/syslog

✅ 常见需求速查

需求 命令
只看错误 journalctl -p err
只看内核 dmesg
实时日志 journalctl -f
排除噪音 grep -v

如果你指的是 某个具体程序输出的 message(比如 apt、mail、cron、某个软件日志),可以告诉我具体场景,我可以给你更精确的过滤方案。

0 踩