KDE / Awesome WM과 함께 Arch Linux를 사용하고 있습니다. notify-send
작업을 시도
하고 cron
있습니다.
나는 DISPLAY
/ XAUTHORITY
변수를 설정 하고 notify-send
결과없이 "sudo -u"로 실행 하려고 시도했습니다 .
세션에서 대화식으로 알림 보내기를 호출하고 알림을받을 수 있습니다.
FRON은 크론 작업이 정상적으로 실행 중이며 임시 파일에 물건을 에코하여 확인했습니다. 작동하지 않는 것은 단지 "알림-송신"입니다.
암호:
[matrix@morpheus ~]$ crontab -l
* * * * * /home/matrix/scripts/notify.sh
[matrix@morpheus ~]$ cat /home/matrix/scripts/notify.sh
#!/bin/bash
export DISPLAY=127.0.0.1:0.0
export XAUTHORITY=/home/matrix/.Xauthority
echo "testing cron" >/tmp/crontest
sudo -u matrix /usr/bin/notify-send "hello"
echo "now tested notify-send" >>/tmp/crontest
[matrix@morpheus ~]$ cat /tmp/crontest
testing cron
now tested notify-send
[matrix@morpheus ~]$
알 수 있듯이 알림 보내기 전과 후에 에코가 작동했습니다.
또한 설정을 시도했습니다DISPLAY=:0.0
업데이트 : 조금 더 검색하여 DBUS_SESSION_BUS_ADDRESS 를 설정해야 한다는 것을 알았습니다 . 대화식 세션에서 얻은 값을 사용하여 이것을 하드 코딩 한 후 작은 "hello"메시지가 1 분마다 화면에 나타납니다!
그러나 catch는이 변수가 해당 게시물마다 영구적이지 않기 때문에 여기서 제안 된 명명 된 파이프 솔루션을 시도해 보겠습니다.
[matrix@morpheus ~]$ cat scripts/notify.sh
#!/bin/bash
export DISPLAY=127.0.0.1:0.0
export XAUTHORITY=/home/matrix/.Xauthority
export DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-BouFPQKgqg,guid=64b483d7678f2196e780849752e67d3c
echo "testing cron" >/tmp/crontest
/usr/bin/notify-send "hello"
echo "now tested notify-send" >>/tmp/crontest
cron
통지 전송을 지원하지 않는 것 같으 므로 (적어도 직접적으로는 아님) cron
사용하기에 더 친숙한 다른 알림 시스템이 있습니까?
&>>/tmp/crontest
알림 전송 라인 에 a 를 추가하고notify-send
오류 메시지가 표시되는지 확인하십시오 .