如何通过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有一个图形用户界面,而/bin/bash/usr/bin/python没有。您需要一个终端仿真器,例如lxterm

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

或者一个派对:
* * * * * env DISPLAY=:0 lxterm -e "/bin/bash"

这对我来说没用。 - user38537
你用哪个终端?是lxterm吗? - A.B.
我使用bash。那不就是终端吗?无论Ctrl+Alt+T启动的是什么,我都用它。 - user38537
bash 是一个 shell,lxterminal 是一个终端仿真器。你可以在终端内启动一个 shell。 - A.B.
好的,我会继续琢磨它。 - user38537
这个命令有效:* * * * * env DISPLAY=:0 lxterm -e "/bin/bash -c '/usr/bin/python /scripts/mypython.py'"请修改您的初始回答,我会接受它作为答案。 - user38537