如何通过 cron 运行 bash 或 python 脚本,并在本地桌面上可见

如何通过 cron 运行 bash 或 python 脚本,并在本地桌面上可见

我有一台生产服务器,它在本地桌面上运行多个 bash 脚本。两个脚本一直在运行,不需要停止。我还有第三个 Python 脚本,需要在上午 9 点启动。它会在凌晨 1:30 自动退出。

如果我将以下内容添加到我的 cron 文件中,它将成功启动 leafpad。

* * * * * env DISPLAY=:0 leafpad

举个例子,这是行不通的:

* * * * * env DISPLAY=:0 /bin/bash

我试过

* * * * * env DISPLAY=:0 /usr/bin/python /scripts/mypython.py

脚本确实启动了(它发送了一封启动电子邮件),但它没有在桌面上运行。我遗漏了什么?

答案1

leafpad有 GUI,/bin/bash没有/usr/bin/python。您需要一个终端仿真器,例如lxterm

* * * * * env DISPLAY=:0 lxterm -e "/bin/bash -c '/usr/bin/python /scripts/mypython.py'"

或者 bash:

* * * * * env DISPLAY=:0 lxterm -e "/bin/bash"

相关内容