如何使用 crontab 中的通知发送?

如何使用 crontab 中的通知发送?

我确实阅读了很多教程,但 crontab 没有启动通知发送。

我尝试过的:

  1. etc/crontab

    最后添加:

    15 * * * * notify-send 'crontab' 'test'
    
  2. 使用 crontab 界面:

    crontab -e
    

    最后添加:

    15 * * * * notify-send 'crontab' 'test'
    

答案1

正如@Lnux所建议的:

创建一个.sh,例如test.sh

#!/bin/sh
eval "export $(egrep -z DBUS_SESSION_BUS_ADDRESS /proc/$(pgrep -u $LOGNAME gnome-session)/environ)";

#Code:
DISPLAY=:0 notify-send "Test"

然后设置crontab:

crontab -e

在底部添加:

* * * * * /home/myUser/test.sh

注意:您可以将.sh 文件放在其他位置,并且不要忘记允许执行它。

答案2

Crontab 在后台运行,如果没有指定图形输出,它将不显示任何内容。因此,您应该明确说明要使用哪种输出。为此,请export DISPLAY=:0 &&在命令前添加,例如

15 * * * * export DISPLAY=:0 && notify-send 'I am alive!'

相关内容