URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 28639
[ Назад ]

Исходное сообщение
"Скрипт bash"

Отправлено Purple , 09-Апр-03 11:14 
Написал простенький скрипт - проверка пинга сервера. Если сервер не
отвечает, послать сообщение по почте.

ipaddress="192.168.1.4"
errormessage="Server CRASH!!!"
message=$ipaddress$errormessage
ping -c 1 $ipaddress |awk '{print $4}'>/root/scripts/reports/pingapp.log
pingstatus=`awk 'NR==5' /root/scripts/reports/pingapp.log`
if [ $pingstatus == 0 ];then
echo |mail -s $message postmaster
#else
#echo |mail -s "Server APP active!" postmaster
fi

Не работает так ,как хочется, подстановка в строке:
echo |mail -s $message postmaster

После подстановки получается: echo |mail -s 192.168.1.4Server CRASH
postmaster
И воспринимает CRASH как локального пользователя mail.
А хотелось бы ,чтобы получалось: echo |mail -s "192.168.1.4 Server CRASH"
postmaster
Как это правильно сделать ,чтобы тема была с пробелами?
Ерунда ведь по-сути осталась.


Содержание

Сообщения в этом обсуждении
"Скрипт bash"
Отправлено Понт , 09-Апр-03 14:56 
ну ты нагородил

server=xxx.xxx.xxx.xxx
ping -c 1 $server
[ $? != 0 ] && mail -s "$server not responding" postmaster


"Скрипт bash"
Отправлено Dimez , 09-Апр-03 16:23 
Скорее, так...

server=xxx.xxx.xxx.xxx
ping -c 1 $server
[ $? != 0 ] && echo "smth" | mail -s "$server not responding" postmaster


"Скрипт bash"
Отправлено Понт , 09-Апр-03 18:28 
точно, так скорее

"Скрипт bash"
Отправлено Purple , 10-Апр-03 07:09 
--cut--
mail -s "$server not responding" postmaster.
--cut--
Действительно. Проще некуда.
Спасибо, Понт.