在 Linux 中,使用 nohup 启动命令时,默认会把**标准输出(stdout)和标准错误(stderr)**写入到当前目录下的日志文件:
nohup your_command &
如果没有特别指定重定向,日志会生成在:
./nohup.out
也就是你执行命令时所在的当前工作目录。
通常我们会自己指定日志文件,例如:
nohup your_command > app.log 2>&1 &
那么日志就在:
./app.log
或者绝对路径:
nohup your_command > /var/log/app.log 2>&1 &
日志在:
/var/log/app.log
ps -ef | grep your_command
拿到 PID 后:
ls -l /proc/<PID>/fd
通常会看到:
1 -> /path/to/logfile
2 -> /path/to/logfile
ls -l nohup.out
pwd
lsof -p <PID> | grep txt
或
lsof -p <PID> | grep log
nohup.out 会一直增大,建议生产环境一定自定义日志路径>> 追加、2>&1 合并错误输出logrotate如果你愿意,可以把你具体的 nohup 启动命令发出来,我可以直接告诉你日志在哪。