我一直在互联网上搜索,但没有找到我的问题的正确答案。\n这是我的详细问题:
\n\n有 python 打开网络浏览器。我可以在终端上手动运行它,并且运行良好。
\n\n但是当我将其放入 crontab 时,网络浏览器无法打开。这是我的 contab 命令:
\n\n*/1 * * * *\xe3\x80\x80\xef\xbc\x8fusr/bin/python /home/pi/test.py 2>&1 >/dev/null | tee -a /home/pi/test.log\nRun Code Online (Sandbox Code Playgroud)\n\n请注意,这是一个显示问题。Python执行成功。
\n\n我检查了 crontab 创建的日志,它说:
\n\n\n\n\n无法连接到 X 服务器
\n
所以我尝试在我的 contab 中添加环境变量并将其更改为:
\n\n*/1 * * * *\xe3\x80\x80export DISPLAY=:0.0 && \xef\xbc\x8fusr/bin/python /home/pi/test.py 2>&1 >/dev/null | tee -a /home/pi/test.log\nRun Code Online (Sandbox Code Playgroud)\n\n但它仍然不起作用。我在 crontab 中添加了一些其他内容,例如:
\n\n/usr/bin/xhost +\n/usr/bin/ssh pi@localhost -X\nRun Code Online (Sandbox Code Playgroud)\n\n但这就是行不通!
\n\n现在我不知道该怎么办。谁能告诉我它出了什么问题以及如何解决它?非常感谢!
\n\n此致\n海伦
\n很兴奋,因为我解决了这个问题!我是这样实现的:
\n\n我编写了一个 shell 脚本来运行 python 脚本。这是我的 shell 脚本(名为“shell.sh”):
\n\n#\xef\xbc\x81/bin/bash \nxhost +local:root \nexport DISPLAY=:0.0\npython /home/pi/test.py\nRun Code Online (Sandbox Code Playgroud)\n\n这里我觉得xhost +local:root也可以换成xhost + localhost。如果你的用户是 root。
\n\n这是我的 crontab 命令:
\n\n */1 * * * *\xe3\x80\x80\xef\xbc\x8fbin/bash /home/pi/shell.sh 2>&1 >/dev/null | tee -a /home/pi/shell.log\nRun Code Online (Sandbox Code Playgroud)\n\n现在完美运行了!!
\n\n任何人和我有同样问题的人都可以看看这个链接:Cannot connect to X server :0.0 with a Qt application
\n| 归档时间: |
|
| 查看次数: |
1026 次 |
| 最近记录: |