在 CentOS 上“实时看 Java 日志”,常见有几种场景和做法,下面按最常用到的方式给你说明。
如果 Java 应用把日志输出到了文件(如 app.log):
tail -f /path/to/app.log
-f:实时跟踪文件新增内容Ctrl + C如果日志很大,想从最后 200 行开始看:
tail -n 200 -f /path/to/app.log
如果是按天滚动的日志(如 app.log.2026-01-21):
tail -F /path/to/app.log
-F比-f更稳,文件被轮转(rotate)后还能继续跟踪
nohup java -jar app.jar > app.log 2>&1 &
然后:
tail -f app.log
如果 Java 是用 systemctl 启动的:
systemctl status java-app
journalctl -u java-app -f
常用参数:
journalctl -u java-app -f -n 200
-f:实时-n 200:最近 200 行只看 ERROR:
tail -f app.log | grep ERROR
忽略大小写:
tail -f app.log | grep -i error
只看某个用户或接口:
tail -f app.log | grep "userId=123"
如果日志分多个文件:
tail -f app.log error.log
或用 multitail(需安装):
yum install -y multitail
multitail app.log error.log
Tomcat 实时看日志:
tail -f /usr/local/tomcat/logs/catalina.out
tail -F app.log | grep -i --line-buffered error
如果你愿意,可以告诉我:
我可以直接给你一条最合适命令。