В общем сабж:Берем fetchmail. Check-аем его(fetchmail -c).
Если почта есть он выдает строку:«N сообщений для ...»,если ее нету, то «Для ... почты нет».
Собственно захотелось написать скрипт, который засовываем в crontab, и он каждые 5 минут notify-send'ом шлет уведомление о том, что есть новая почта.
Собственно скрипт следующий:
#!/bin/bash
export DISPLAY=:0.0
if fetchmail -c | grep 'сообщ'; then
MAILCOUNT=`fetchmail -c | awk '{print $1}'`; else
MAILCOUNT='0'; fi
if [ ! $MAILCOUNT -eq 0 ]; then
notify-send -t 10000 -i $HOME/.icons/email.png "Новая почта" "Новых сообщений: $MAILCOUNT"; fi
Сделал скрипт исполняемым в crontab -e и засунул его исполняться каждую минуту(* * * * * sh /home/jtj/.script).
Исполняется, судя по выхлопу #systemctl status cronie.service
cronie.service - Periodic Command Scheduler
Loaded: loaded (/usr/lib/systemd/system/cronie.service; enabled)
Active: active (running) since Thu, 2012-11-08 09:54:06 NOVT; 28min ago
Main PID: 329 (crond)
CGroup: name=systemd:/system/cronie.service
329 n/a
663 n/a
Nov 08 10:18:01 sleam /usr/sbin/crond[21404]: pam_unix(crond:session): session opened for user jtj by (uid=0)
Nov 08 10:18:01 sleam /USR/SBIN/CROND[21405]: (jtj) CMD (/home/jtj/.fetch )
Но notify-send не рождает уведомления на экране.
Что в скрипте неверно?
bash, crontab