为什么我的nohup.out是空的?

时间:2011-12-16 16:32:24

标签: ubuntu ubuntu-11.10

我有一个简单的python脚本,它只运行一个无限循环并打印“running”。当我在后台使用nohup启动它时,我在当前目录中看到一个nohup.out文件但是没有任何内容写入它。我很迷惑。我试过以下

nohup test.py 

写入nohup.out但显然不在后台运行

nohup test.py &

在后台运行但不写入nohup.out

nohup test.py 2>&1 &

也在后台运行但不写入nohup.out

我打赌我错过了一些简单的事情。有什么想法吗?

这是我的python脚本供参考:

import sys
from time import sleep

def main():
    print "Starting...."
    while True:
        print "running..."
        sleep(5.00)


if __name__ == "__main__":
     main()

1 个答案:

答案 0 :(得分:11)

也许你的stdout没有立即刷新,因为它没有连接到终端。尝试使用

import sys
sys.stdout.flush()

刷新输出。