在 CentOS 中,使用 nohup 启动程序时,默认会把**标准输出(stdout)和标准错误(stderr)**写入到当前目录下的:
nohup.out
如果你是这样运行的:
nohup python app.py &
日志文件就是:
./nohup.out
(在当前执行命令的目录下)
查看日志:
tail -f nohup.out
实际使用中一般会自己指定日志文件,例如:
nohup python app.py > app.log 2>&1 &
日志位置就是:
app.log
查看方式:
tail -f app.log
解释:
> :重定向标准输出2>&1 :把错误输出也写入同一个文件如果你忘了日志在哪,可以先查进程:
ps -ef | grep 程序名
或:
jobs -l
再用 lsof 看打开的文件(可选):
lsof -p 进程PID
cat nohup.out # 查看全部
tail -n 100 nohup.out # 查看最后100行
tail -f nohup.out # 实时查看
grep ERROR nohup.out # 搜索关键字
如果你愿意,可以告诉我你是怎么启动程序的(命令贴出来),我可以帮你准确指出日志在哪。