我写了一个script.py
,它打开一个tk窗口,并在窗口包含的画布中绘制乌龟。我想通过plink使用以下命令启动此脚本:
plink.exe -pw raspberry pi@pi-fisch00 python /home/pi/script.py
但我总是收到错误:
script.py line 32, in <module> root = Tk()
no display name and no $DISPLAY environment variable
我认为同样的错误导致crontab没有执行script.py
。
我在crontab中的条目:
*/1 * * * * python /home/pi/script.py
语法应该是正确的,因为其他脚本正在运行,如果我手动将python /home/pi/script.py
放入cmd,一切都很好。 script.py
被执行。我该如何解决这个问题并让crontab执行script.py
?为什么我不能通过plink执行script.py
?
答案 0 :(得分:2)
查看您收到的错误消息:
没有显示名称,也没有$ DISPLAY环境变量
您正在尝试运行需要X11显示的内容,这不会在cron的上下文中提供(并且可能不会通过plink,除非您在本地运行X11显示服务器和已启用X11转发。
通常,如果您需要访问显示器,则需要在现有桌面会话中运行它。有办法解决这个问题;关于该主题的一些想法,请参阅: