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

Исходное сообщение
"помогите разобраться со скриптом"

Отправлено Drug , 22-Июн-05 13:10 
написал скрипт:
#! /bin/bash
rezult=`ping -q -c 5 -I eth2 172.21.1.2 | grep '100%' | wc -l`
if rezult=1;   then
    route del default
    route add default gw 172.20.1.1
else
if rezult=0;   then    
    route del default
    route add default gw 172.21.1.1
fi
fi
но почему то не работает, в частности когда rezult=0, хотя если проганть команды просто одну за другой, то выполняются корректно.
Подскажите, что я делаю не так?

Содержание

Сообщения в этом обсуждении
"помогите разобраться со скриптом"
Отправлено madskull , 22-Июн-05 13:47 
>написал скрипт:
>#! /bin/bash
>rezult=`ping -q -c 5 -I eth2 172.21.1.2 | grep '100%' | wc
>-l`
>if rezult=1;   then
>    route del default
>    route add default gw 172.20.1.1
>else
>if rezult=0;   then
>    route del default
>    route add default gw 172.21.1.1
>fi
>fi
>но почему то не работает, в частности когда rezult=0, хотя если проганть
>команды просто одну за другой, то выполняются корректно.
>Подскажите, что я делаю не так?

if [ result -eq 1 ]; then

читайте доки, они рулез


"помогите разобраться со скриптом"
Отправлено madskull , 22-Июн-05 13:49 
не говоря уж о том, что лучше сделать
if ping -q -c 5 -I eth2 172.21.1.2; then
   route del default
   route add default gw 172.20.1.1
else
   route del default
   route add default gw 172.21.1.1
fi

"помогите разобраться со скриптом"
Отправлено Drug , 22-Июн-05 14:06 
>не говоря уж о том, что лучше сделать
>if ping -q -c 5 -I eth2 172.21.1.2; then
>   route del default
>   route add default gw 172.20.1.1
>else
>   route del default
>   route add default gw 172.21.1.1
>fi

спасибо


"помогите разобраться со скриптом"
Отправлено Дмитрий , 22-Июн-05 15:58 
>не говоря уж о том, что лучше сделать
>if ping -q -c 5 -I eth2 172.21.1.2; then
>   route del default
>   route add default gw 172.20.1.1
>else
>   route del default
>   route add default gw 172.21.1.1
>fi

а разве это равно grep 100%???


"помогите разобраться со скриптом"
Отправлено madskull , 24-Июн-05 11:47 
>>не говоря уж о том, что лучше сделать
>>if ping -q -c 5 -I eth2 172.21.1.2; then
>>   route del default
>>   route add default gw 172.20.1.1
>>else
>>   route del default
>>   route add default gw 172.21.1.1
>>fi
>
>а разве это равно grep 100%???

Нет, не равно. Это просто обрабатывает код возврата ping - если 0, то все в прорядке.

Ну, а если необходимо контроллировать именно 100%-й пинг, то
if ping -q -c 5 -I eth2 172.21.1.2 | grep -q '100%'; then


"помогите разобраться со скриптом"
Отправлено bakake , 22-Июн-05 18:26 
>if [ result -eq 1 ]; then
>
>читайте доки, они рулез

угу

if [ $result -eq 1]; then