毎日同じ時間にユーザーに通知を送信したいと思います。
いつでも:50
私は次のアドレスに手紙を送りますcrontab -e
:
50 * * * * DISPLAY=:0 /usr/bin/notify-send -i /home/nazar/Pictures/icons/download_manager.png "中断" "10分間中断"
コンソールで実行するとき:
notification-send -i /home/nazar/Pictures/icons/download_manager.png "休憩" "10分間休憩"
所望の結果を得た。
ただし、コンピュータで作業しているときは、必要な時間にこの出力を取得できません。
どんな提案がありますか?
修正する:
クローンタスクを次のように更新しました。
50 * * * * DISPLAY=:0 /usr/bin/notify-send -i /home/nazar/Pictures/icons/download_manager.png "作業を休憩" "10分だけ休憩を取ってください!" -クローン.out
実行後にファイルが生成されましたが空でした。
次のようにクローンジョブを更新しようとしています。
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はこのスクリプトを毎分実行しません。
なぜこれが起こるのですか?
そして、このクローンジョブの実行を解決する方法は?
答え1
その特定のユーザーに対してcrontabを編集する必要があるかもしれません。
su -l nazar
crontab -e