无法将后台运行的 python 脚本的 stdout 通过管道传输到文件

无法将后台运行的 python 脚本的 stdout 通过管道传输到文件

我在带有 Raspbian 的 RaspberryPi 上有一个 python 脚本myscript.py,它通过文件启动rc.local。由于它有无限循环,我需要在后台运行它。到目前为止一切顺利,但我也想用管道将该脚本的标准输出记录到文件中,但无法使其工作。我的rc.local文件如下所示:

/usr/bin/python3 /home/pi/myscript.py >> /var/www/html/log.log &

我的log.log文件有 666 权限,所以我的脚本应该能够写入它,对吗?但事实并非如此。

答案1

python的输出默认是缓冲的,你必须使用“-u”参数来避免缓冲。所以这应该可以解决问题:

/usr/bin/python3 -u /home/pi/myscript.py >> /var/www/html/log.log &

相关内容