我的raspberry pi (启动python脚本)有一个问题,它会在某个地方生成一个异常,并且我捕获了所有打印到终端中的错误(如果从空闲中运行)。
但是,如何在文件启动时将打印的输出保存到文件中呢?我在网上找到了这个脚本,但是它似乎没有写打印出来的文本,它创建了文件,但是内容是空的(它应该每隔30秒打印一次“检查”)。
这是pi引导后正在执行的代码,它完美地显示了GUI元素(是的,由于GPIO引脚需要sudo )。
#!/bin/sh
startx
sudo python /home/pi/python_gui.py > /home/pi/output.log
希望有人知道答案,谢谢提前!
发布于 2016-01-15 14:24:51
如果没有看到正在输出的错误,就很难调试任何失败的脚本。因此,首先您应该确保您正在记录异常。这句话:
sudo python /home/pi/python_gui.py > /home/pi/output.log
将stdout
重定向到文件/home/pi/output.log
。但是,如果您想记录错误,还需要重定向stderr
。这里有两个选择,要么将stderr
重定向到不同的文件,要么通过将它重定向到stdout
来将它重定向到同一个文件。例如:
若要重定向到新文件:
sudo python /home/pi/python_gui.py > /home/pi/output.log 2> /home/pi/error.log
若要将两个文件重定向到同一个文件,请执行以下操作:
sudo python /home/pi/python_gui.py &> /home/pi/output.log
或者:
sudo python /home/pi/python_gui.py > /home/pi/output.log 2>&1
您可以找到更多的信息和示例on this question。
如果您希望每次运行时更新日志文件,则可以使用>>
追加日志文件,例如:
sudo python /home/pi/python_gui.py &>> /home/pi/output.log
https://stackoverflow.com/questions/34812798
复制相似问题