在 Debian 里,“message”可能指几种不同的东西,先说最常见的几种过滤方式,你可以对号入座:
journalctl(systemd 日志)# 只看某服务
journalctl -u nginx
# 只看某优先级(err 及以上)
journalctl -p err
# 按时间
journalctl --since "2024-01-01" --until "2024-01-02"
# 过滤关键字
journalctl | grep "error"
rsyslog 过滤并分流编辑 /etc/rsyslog.conf 或 /etc/rsyslog.d/*.conf:
# 把包含 "sshd" 的日志写到单独文件
:msg, contains, "sshd" /var/log/sshd.log
& stop
重启:
systemctl restart rsyslog
dmesg(内核消息)dmesg | grep usb
dmesg -T | grep error
只看某设备:
dmesg | grep -i eth0
# apt 日志
cat /var/log/apt/history.log
# 只看安装
grep "install" /var/log/apt/history.log
传统 /var/log/messages:
grep -v "cron" /var/log/messages
command 2>&1 | grep -v "debug"
如果你说的是 某个具体命令的 message(比如 apt、systemctl、dmesg、某个服务),告诉我具体场景,我可以给你更精确的过滤规则。