我有一个烧瓶应用程序run.py,它使用子进程来执行shell文件hello.sh。 hello.sh文件激活虚拟环境并在覆盆子pi上启动安全摄像头程序。
run.py
#!/bin/bash
/home/pi/.virtualenvs/cv/bin/python
/home/pi/security/pi_surveillance_testing2.py --output
home/pi/security/output/ --conf /home/pi/security/conf.json
hello.sh
popen
问题: 从终端运行run.py时,一切都按预期工作。但是我已经将run.py添加到rc.local文件中,因此它在启动时启动,这不起作用。我必须杀死烧瓶应用程序并从终端重新启动才能使其工作。
有什么想法吗?这是文件权限问题还是stdout / GUI问题?我尝试过subprocess.Popen,subprocess.call以及不同的stdout选项。我也试过shell = True但似乎没什么用。