最常用方式是tail -f,可实时跟踪日志;-F支持轮转文件持续跟踪;配合grep可精准过滤;tailf在部分系统中更省电。

最常用、最直接的方式是用 tail -f,它专为实时跟踪日志设计,启动快、行为稳定、几乎无需额外配置。
基础实时查看:tail -f
执行后显示文件末尾默认 10 行,并持续监听新增内容,新日志一写入就立刻出现在终端上:
-
tail -f /var/log/syslog—— 查看系统日志最新动态 -
tail -n 50 -f /var/log/nginx/access.log—— 先显示最后 50 行,再实时追加
按 Ctrl + C 可随时退出。
应对日志轮转:用 -F 替代 -f
生产环境日志常被 logrotate 拆分归档(如 error.log → error.log.1.gz),此时普通 -f 会卡在旧文件里不再更新。而 -F 会自动检测文件重命名或重建,始终跟踪“当前活跃日志”:
-
tail -F /var/log/mysql/error.log—— 即使日志被轮转,仍能继续输出新内容 -
-F等价于--follow=name --retry,底层靠文件名而非文件描述符跟踪
精准过滤关键信息:tail -f 配合 grep
日志量大时,直接滚动容易错过重点。加管道过滤可聚焦目标:
-
tail -f /var/log/auth.log | grep "Failed password"—— 实时抓取登录失败记录 -
tail -f /var/log/messages | grep -i -E "(error|warn|exception)"—— 不区分大小写匹配多类关键词 - 加
--line-buffered避免缓冲延迟:tail -f app.log | grep --line-buffered "timeout"
省电/兼容性补充:tailf 命令
部分系统(如较老的 CentOS 或嵌入式环境)提供 tailf,它与 tail -f 行为高度相似,但更省磁盘 I/O(适合笔记本或低功耗设备):
tailf /var/log/redis/redis-server.log- 注意:
tailf并非所有发行版默认安装,可用command -v tailf确认是否存在


















