0

我正在尝试使用漂亮的级别集运行 python 脚本。

nice -n 5 python3 blah.py

按预期运行并将文本输出发送到屏幕。但是,我想将输出通过管道传输到一个文本文件并在后台运行,这样我就可以远程检查进度。

然而,

nice -n 5 python3 blah.py > log.txt &

创建日志文件 log.txt 但不向文本文件写入任何内容,因此我不确定标准输出将发送到何处或如何将其定向到我的文本文件。

4

2 回答 2

2

我最终使用命令解决了这个问题

nice -n 5 python3 -u blah.py >log.txt & 

-u 强制标准输入、标准输出和标准错误的二进制 I/O 层无缓冲。这允许在进程运行时将 python 脚本的输出写入文本文件。

于 2013-11-14T09:44:07.597 回答
0

我猜您正在通过运行命令ssh并希望在运行和检查日志之间注销。为此运行:

nohup nice -n 5 python3 blah.py > log.txt &

这将防止在注销时杀死程序。nohup 也重定向stderrstdout,这也可能是导致空log.txt文件的原因。

于 2013-11-13T14:28:31.277 回答