在 CentOS 系统中搜索 Java 日志内容,通常结合 Linux 命令(如 grep、find、journalctl 等)和 Java 日志特点(文件位置、格式)来操作。下面按常见场景给你总结一套实用方法。
./logs/nohup.out/var/log/tomcat/$CATALINA_HOME/logs/catalina.outlog.path 或 log.fileps -ef | grep java
或
jps -l
grep "OutOfMemoryError" /var/log/tomcat/catalina.out
grep -i "error" app.log
grep -n "NullPointerException" app.log
grep -r "Exception" /opt/app/logs/
grep "ERROR" app.log | grep "Timeout"
tail -n 100 app.log | grep "ERROR"
tail -f app.log
或过滤实时错误:
tail -f app.log | grep "ERROR"
grep "2026-01-21 10:" app.log
find /opt/app/logs -name "*.log" -mtime -1
find /opt/app/logs -name "*.log" -mtime -1 | xargs grep "ERROR"
如果 Java 是用 systemctl 启动的:
journalctl -u your-java-service.service
搜索关键字:
journalctl -u your-java-service.service | grep "Exception"
实时查看:
journalctl -u your-java-service.service -f
zgrep(压缩日志)zgrep "ERROR" app.log.2026-01-*.gz
less(大文件更安全)less app.log
在 less 中:
/关键字 搜索n 下一个grep -i "OutOfMemory" catalina.out
grep -i "deadlock" app.log
grep "500" access.log
如果你能告诉我:
我可以给你更精准的搜索命令。