crontab 不能正常工作

crontab 不能正常工作

我想每天同时向用户发出一些通知:

任何时间:50

我写信给crontab -e

50 * * * * DISPLAY=:0 /usr/bin/notify-send -i /home/nazar/Pictures/icons/download_manager.png "Break" "休息 10 分钟"

当我从控制台运行它时:

notification-send -i /home/nazar/Pictures/icons/download_manager.png "休息" "休息 10 分钟"

我得到了想要的结果:

在此输入图像描述

但是当我在电脑上工作时,我在所需的时间没有这个输出。

有什么建议吗?

更新:

我将 cron 作业更新为:

50 * * * * DISPLAY=:0 /usr/bin/notify-send -i /home/nazar/Pictures/icons/download_manager.png "工作休息" "请休息 10 分钟!" 2>&1 | tee -a cron.out

执行后创建了文件,但它是空的。

我尝试按如下方式更新我的 cron 作业:

00 13 * * *  /home/nazar/Documents/scripts/lunch_break_job.sh
50 *  * * *  /home/nazar/Documents/scripts/pc_break.sh

# just cron test
*/1  *  * * *  /home/nazar/Documents/scripts/cron_job_test.sh

看起来cron_job_test.sh

#!/bin/bash

export DISPLAY=0.0
export XAUTHORITY=/home/matrix/.Xauthority

if [ -r "$HOME/.dbus/Xdbus" ]; then
  . "$HOME/.dbus/Xdbus"
fi

/usr/bin/notify-send "hello"

当我从终端运行此脚本时:

./cron_job_test.sh

我正确收到通知。
但 crontab 不会每分钟运行这个脚本。

为什么会出现这种情况?
以及如何解决这个 cron 作业的执行?

答案1

您可能需要编辑该特定用户的 crontab,即

su -l nazar
crontab -e

相关内容