我尝试在 anacrontab 达到目标时间时显示一条消息,我想最好的方法是使用通知。
我已将这一行添加到我的用户 crontab 中以实现同样的效果:
* * * * * XDG_RUNTIME_DIR=/run/user/1000 notify-send -u critical "Test"
但这在 anacrontab 中不起作用:
1 0 job.personal XDG_RUNTIME_DIR=/run/user/1000 notify-send -u critical "test"
我用来sudo anacron -f
查看结果,它给出以下输出/var/log/syslog
:
Jun 2 16:34:12 qy88zx anacron[28183]: Anacron 2.3 started on 2020-06-02
Jun 2 16:34:12 qy88zx anacron[28183]: Will run job `job.personal' in 0 min.
Jun 2 16:34:12 qy88zx anacron[28183]: Job `job.personal' started
Jun 2 16:34:12 qy88zx anacron[28183]: Job `job.personal' terminated
Jun 2 16:34:12 qy88zx anacron[28183]: Normal exit (1 job run)
我是否遗漏了什么?
在检查 acrontab 和 crontab 的区别时,我注意到 anacrontab 文件包含两个额外的变量HOME=/root
,LOGNAME=root
因此我将它们更改为我自己的用户空间。我尝试设置DISPLAY=:0
,DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
但仍然没有成功。
请注意,我做了同样的事情壳在终端没有改变任何环境变量,如DISPLAY
。