我有一台生产服务器,它在本地桌面上运行多个 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"