Mam następujący problem. Znalazłem kiedyś w sieci prosty skrypt sprawdzający pocztę w gmailu. Skrypt sprawdza czy są nowe wiadomości w skrzynce, wyświetla stosowne info i kończy swoją działalność. Stosowałem go z powodzeniem w duecie z conky i karambą.
Co zrobić, aby skrypt uruchamiał się co zadany okres czasu, przykładowo co 10 minut i sprawdzał pocztę? Najchętniej widziałbym rozwiązania w postaci modyfikacji skryptu. Czyli mniej więcej coś takiego że odpalam skrypt z parametrem np. ./check_gmail 600 i skrypt sprawdza pocztę co 10 minut, dopóki nie przerwę jego działania.
Oto kod skryptu:
Kod: Zaznacz cały
#!/bin/bash
gmail_login="login" #login do skrzyki
gmail_password="haslo" #hasło do konta
dane="$(wget --secure-protocol=TLSv1 --timeout=3 -t 1 -q -O - https://${gmail_login}:${gmail_password}@mail.google.com/mail/feed/atom --no-check-certificate | grep 'fullcount' | sed -e 's/.*<fullcount>//;s/<\/fullcount>.*//' 2>/dev/null)"
if [ -z "$dane" ]; then
echo "Blad polaczenia"
else
echo "Masz: $dane nowe(ych) wiadomosc(i)."
fi
Kod: Zaznacz cały
./check_gmail 600
Kod: Zaznacz cały
while [ 1=1 ]
do
#tu nastepuje sprawdzanie poczty
sleep $1
done
Pytania są zadawane jeśli skrypt uruchomię z parametrem init:
Kod: Zaznacz cały
./poczta.sh init
Kod: Zaznacz cały
...
do_start() {
./check_gmail.sh $login $haslo $czas &
}
...
#dalsza część skryptu
pozdrawiam
dawid