在 Linux 中,实时输出(查看)日志通常有以下几种常见方式,按使用频率从高到低介绍,并附上典型场景示例。
tail -f(实时查看文件日志)tail -f 日志文件
tail -f /var/log/nginx/access.log
tail -f app.log
✅ 特点:
Ctrl + C 退出tail -n 100 -f app.log
tail -F(推荐)tail -F app.log
-f vs -F| 参数 | 区别 |
|---|---|
-f |
只跟踪文件描述符,文件被重建后失效 |
-F |
自动重试(文件被 rotate 后仍然有效)✅ |
✅ 生产环境强烈推荐 -F
journalctl -u nginx -f
journalctl -f
journalctl -n 100 -f
✅ 适合:
docker logs -f 容器名或ID
docker logs --tail 100 -f 容器名
tail -f app.log | grep error
tail -f app.log | grep -i error
tail -f app.log | grep --color=auto error
less +F app.log
操作:
F:进入实时追踪Ctrl + C:暂停q 退出✅ 适合 大文件日志
multitailmultitail /var/log/nginx/access.log /var/log/nginx/error.log
(需安装:yum install multitail / apt install multitail)
java -jar app.jar
java -jar app.jar > app.log 2>&1 &
tail -F app.log
| 场景 | 命令 |
|---|---|
| 查看文件日志 | tail -F app.log |
| systemd 服务 | journalctl -u xxx -f |
| Docker 容器 | docker logs -f 容器 |
| 实时过滤 | tail -F app.log | grep ERROR |
| 大日志翻页 | less +F app.log |
如果你能告诉我:
我可以给你一条最合适的具体命令。