温馨提示×

nohup日志怎么保存

小樊
42
2026-08-31 08:15:37
栏目: 编程语言

nohup 命令默认会把输出日志保存到当前目录下的 nohup.out 文件中。如果你想自定义日志保存位置或方式,可以按下面几种常见方式来操作。


1️⃣ 默认行为(不指定日志)

nohup python app.py &
  • 输出自动保存到:
    nohup.out
    
  • 如果当前目录不可写,会保存到:
    $HOME/nohup.out
    

2️⃣ 自定义日志文件(最常用 ✅)

nohup python app.py > app.log 2>&1 &

含义说明:

  • >:重定向标准输出
  • 2>&1:把错误输出(stderr)也重定向到同一个文件
  • &:后台运行

结果:

  • 日志保存在:app.log

3️⃣ 标准输出和错误日志分开保存

nohup python app.py > stdout.log 2> stderr.log &
  • stdout.log:正常输出
  • stderr.log:错误日志

4️⃣ 追加日志(而不是覆盖)

nohup python app.py >> app.log 2>&1 &
  • >>:追加写入(适合多次启动)

5️⃣ 不保存任何日志(丢弃)

nohup python app.py > /dev/null 2>&1 &
  • 日志直接丢弃
  • 常用于不关心输出的程序

6️⃣ 查看后台任务

jobs
# 或
ps -ef | grep app.py

7️⃣ 停止 nohup 程序

kill -9 PID

✅ 推荐用法(生产环境)

nohup python app.py > app.log 2>&1 &

✅ 日志可控
✅ 方便排查问题
✅ 后台稳定运行


如果你用的是 Java / Spring Boot / Node / Shell 脚本,我也可以给你对应的最佳日志实践。

0