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

Исходное сообщение
"Как победить вывод ping'a"

Отправлено Frontera , 30-Июн-03 22:54 
Приветствую всемугущий All!
Подскажите советом, система FreeBSD 4.7, надо написать скрипт который будет пинговать прова, и в зависимости от удачности пинга производить те или иные действия... пробовал так:
#!/usr/local/bin/bash
if [ ! "'ping -c3 ip_addr'" ]
   then
    <run_some_file>
   else
    <run_another_file>
fi

все бы хорошо, но как я понял он цепляет ЛЮБОЙ! вывод и принимает его за нормальное завршение, соответственно у него извечная нормальная работа... а можно сделать так чтоб он смотрел на вывод и если например числится loss 100% то принимал это как ненормальное заершение...?????
Заранее благодарен :-)


Содержание

Сообщения в этом обсуждении
"Как победить вывод ping'a"
Отправлено Alexander , 01-Июл-03 08:48 
>Приветствую всемугущий All!
>Подскажите советом, система FreeBSD 4.7, надо написать скрипт который будет пинговать прова,
>и в зависимости от удачности пинга производить те или иные действия...
>пробовал так:
>#!/usr/local/bin/bash
>if [ ! "'ping -c3 ip_addr'" ]
>   then
>    <run_some_file>
>   else
>    <run_another_file>
>fi
>
>все бы хорошо, но как я понял он цепляет ЛЮБОЙ! вывод и
>принимает его за нормальное завршение, соответственно у него извечная нормальная работа...
>а можно сделать так чтоб он смотрел на вывод и если
>например числится loss 100% то принимал это как ненормальное заершение...?????
>Заранее благодарен :-)

   Кушайте, не обляпайтесь ;)


#!/bin/sh
#

/bin/ping -q -c5 ip_addr 2>/dev/null 1>/dev/null

var=$?

if [ $var -eq 1 ];  then

     <run_some_file>

else
     <run_another_file> or echo "OK" 2>/dev/null 1>/dev/null
      

fi

exit


"Как победить вывод ping'a"
Отправлено Frontera , 01-Июл-03 09:17 

>   Кушайте, не обляпайтесь ;)
>
>
>#!/bin/sh
>#
>
>/bin/ping -q -c5 ip_addr 2>/dev/null 1>/dev/null
>
>var=$?
>
>if [ $var -eq 1 ];  then
>
>     <run_some_file>
>
>else
>     <run_another_file> or echo "OK" 2>/dev/null 1>/dev/null
>
>
>fi
>
>exit

Спасибо, но я вчера сам все победил :-) правда было уже совсем поздно и поэтому небыло времени запостить........