我尝试根据Raspberry Pi设置相框。此功能由运动传感器触发并加载新图像:
proc = subprocess.Popen(["pgrep", "fbi"], stdout=subprocess.PIPE)
for pid in proc.stdout:
os.kill(int(pid), signal.SIGTERM)
subprocess.call(["fbi","-noverbose","-a","-T","1","/home/pi/photoframe/photos/"+current_image],
stdout=shutup,
stderr=shutup)
这很好用,但是每次调用os.kill()
我都会
Oops: Terminated
在下一个图像出现之前,屏幕上会短暂显示。
以前,我在fbi命令中使用-T 2选项。这导致了另一条线:
map: vt02 => fb0
现在我只得到一个" oops" -line ...
有没有人知道如何防止这种情况? 我可以使用一个解决方案,其中tty文本简单地设置为黑色 - 如果可能的话......我寻求解决方案但似乎没有任何效果。
答案 0 :(得分:0)
您可以使用pkill
命令(pgrep
的变体)搜索和终止进程。
os.system('pkill fbi')
答案 1 :(得分:0)
我遇到了同样的问题,最后使用 SIGHUP 解决了这个问题。