В чём разница между американским, израильским и русским форумом в Сети?
На американском форуме задаёшь вопрос, тебе дают ответ. На израильском форуме задаёшь вопрос, тебе задают встречный вопрос. На русском форуме задаёшь вопрос, а тебе долго рассказывают какой ты му**к.
Вы просто отчаянно не хотите думать головой. За Вас и так уже все сделали 
если Вы разбираетесь в "своем" скрипте, то примерно должны понимать куда вставить строчки создания файла, проверки на существование и удаления.
Осталось узнать как это все делается. А тут уже гугл...
Попробуем.

Пользователь решил продолжить мысль [time]Mon Jun 7 05:45:50 2010[/time]:
Такс... методом
switch ON the mind нашкрябал усовершенствованный скриптец. Но появились новые проблемы, которые отпали сами собой на следующий день, ибо усиленный режим мозга разгадал тяжкую головоломку неисчерпывающих ошибок шелла.
Пользователь решил продолжить мысль [time]Tue Jun 8 15:37:49 2010[/time]:
И вот, мой
долгожданный и
необходимый скрипт готов к употреблению!
Милости просим, угощайтесь на здоровье!
Спасибо всем, кто дал стартовые советы.
#!/bin/bash
for i in 192.168.180.77 192.168.180.57 192.168.180.61 192.168.180.93 192.168.180.49 192.168.180.85 192.168.180.105 192.168.180.53 192.168.180.69 192.168.180.73 192.168.180.1 192.168.180.81 192.168.180.97 192.168.180.101 192.168.180.65 192.168.180.89;
do #количество шагов цикла скрипта
date=`date '+ (%d.%m.%Y/ %H:%M:%S)'`
if [[ "$i" = *.77 ]]; then
name="Centr"
fi
if [[ "$i" = *.57 ]]; then
name="Dryzhba_ZyXEL_48"
fi
if [[ "$i" = *.61 ]]; then
name="Dryzhba_Paradyne_24"
fi
if [[ "$i" = *.93 ]]; then
name="Karpenka"
fi
if [[ "$i" = *.49 ]]; then
name="Pidgorodne_ZyXEL_48"
fi
if [[ "$i" = *.85 ]]; then
name="Pidgorodne_Paradyne_24"
fi
if [[ "$i" = *.105 ]]; then
name="Pidgorodne_DLINK_24"
fi
if [[ "$i" = *.53 ]]; then
name="Mostova_Bichna"
fi
if [[ "$i" = *.69 ]]; then
name="Chernivetska"
fi
if [[ "$i" = *.73 ]]; then
name="Zelena"
fi
if [[ "$i" = *.1 ]]; then
name="Smukivci"
fi
if [[ "$i" = *.81 ]]; then
name="Draganivka_ZyXel_48"
fi
if [[ "$i" = *.97 ]]; then
name="Draganivka_ZyXel_12_1"
fi
if [[ "$i" = *.101 ]]; then
name="Draganivka_ZyXel_12_2"
fi
if [[ "$i" = *.65 ]]; then
name="Berezovucya"
fi
if [[ "$i" = *.89 ]]; then
name="Naluvayka"
fi
if eval "ping -c 2 $i"; then #цикл, когда пинг проходит
if [ -e "/home/trek/DSLAM-down-$name.txt" ]; then #цикл проверки наличия файла, который создается при первом падении объекта
rm /home/trek/DSLAM-down-$name.txt
echo " === file DSLAM-down-$name.txt find and was deleted!!! ===";
echo " === send up-SMS and up-MAIL";
echo "DSLAM $name ($i) $date" | mail -s 'UP '$name'' TrEK@mail.ru,38068*******@sms.beeline.ua
echo " === DSLAM-$name UP already ===";
else echo " === DSLAM-$name is UP === ";
fi
else #цикл, когда пинг НЕ проходит
if [ ! -e "/home/trek/DSLAM-down-$name.txt" ]; then #цикл проверки наличия файла, который создается при первом падении объекта
echo " === DSLAM-$name is DOWN! ===";
echo " === file DSLAM-down-$name.txt don't find! ===";
echo " === send down-SMS and down-MAIL ===";
echo " === file DSLAM-down-$name.txt was created! ===";
touch /home/trek/DSLAM-down-$name.txt;
echo $date > /home/trek/DSLAM-down-$name.txt;
echo "DSLAM $name ($i) $date" | mail -s 'down '$name'' TrEK@mail.ru, 38068*******@sms.beeline.ua
else echo " === file DSLAM-down-$name.txt find! ===";
echo " === DSLAM-$name is DOWN! ===";
fi
fi
sleep 2
#exit 0
done
...
...
...
Теперь хотелось бы сделать так, чтоб при длительном отсутствии пинга, смс повторно отправлялось, скажем через час.
Идея такова: в файл, который создается при первом падении, записывается время падения, и при каждом срабатывании скрипта проверяется текущее время и то время, что указано в файле. Если время текущее превышает на час,- отправляется повторное сообщение про поломку.
Время у меня в скрипте уже записывается, но как организовать сравнение при неудачных повторных пингах?...
Подскажите.
Пользователь решил продолжить мысль [time]Wed Jun 9 08:17:59 2010[/time]:
Идея 2 : Записывать в файл при каждом срабатывании скрипта одиничку... и каждый раз увеличивать на один. И допустим, если скрипт из крона запускается каждые 5 минут, отправлять сообщение повторное, когда цифра в файле будет равна 12.