os.exec后将输出重定向到文件*

时间:2017-07-25 17:20:56

标签: python linux

我有一个python脚本,其输出通过管道传输到日志文件中。我可以通过os.exec调用从内部重新启动文件,但是如果我这样做,新进程不会将其输出写入日志文件。重启过程后,如何保持输出重定向?

我的脚本开始:

python3.6 script.py >> home/pi/log/telegram_bot.log 2>&1 &

我的重启行:

import os
import sys
os.execv(sys.executable, [sys.executable] + sys.argv)

1 个答案:

答案 0 :(得分:0)

我无法重现这个问题。这是我的first.py

import os
import sys
os.execv(sys.executable, [sys.executable, "second.py"])

这是second.py

print("Hello")

以下是我如何运行它并检查结果。如你所见,它运作良好:

$ python first.py >> logfile 2>&1 &
[1] 3098
$ wait
$ cat logfile
Hello