请考虑以下问题:
我有一个Python脚本,可以在Linux机器上运行(Raspberry pi 3,运行Rasbian Jessie)。
此脚本已添加到sudo crontab -e
脚本本身没有问题,但是无法加载与脚本(桌面)位于同一目录中的某个文件,我有任何打印语句/问题进入日志文件。其内容如下:
Traceback (most recent call last):
File "/home/pi/Desktop/mainServ.py", line 18, in <module>
mouth_detector = dlib.simple_object_detector(mouth_detector_path)
RuntimeError: Unable to open mouthDetector.svm
我假设这是因为脚本在启动时无权访问文件系统或LXDE / Desktop?我很可能在这方面做错了。
非常感谢任何解决此问题的方案。
答案 0 :(得分:1)
每当您通过crontab执行脚本时,请准备好使环境变量不同。在这种情况下,您可以简单地使用您尝试引用的文件中的整个路径。
要查看Python中当前环境变量的内容,请使用:
import os
os.environ
您可能会发现crontab环境与您用于测试的任何解释器环境之间存在其他差异。