помогите разобраться со скриптом
Добрый день!
ПОмогите разобраться с конструкцией скрипта:
#!/bin/bash
p=`/sbin/ifconfig | /bin/egrep 'ppp2'| /usr/bin/wc |/bin/awk '{print $1}'`
tmp_ip=`/bin/cat /tmp/ppp1.ip`
1.
if [ $p != "0" ]; then
/bin/echo "PlanetSKY is already up."
/sbin/ifconfig ppp1 |/bin/egrep addr|/bin/awk '{print $2}'|/bin/cut
-f2 -d ":"|/bin/cut -f4 -d "." >/tmp/ppp1.ip
t=`/bin/ping -s 8 -q -c 1 82.211.136.2|/bin/grep loss|/bin/cut -f2 -d
","|/bin/awk '{print $1}'`;
2. elif [ $t = "0" ]; then
echo "1"
/sbin/ifconfig ppp2 down
/bin/vpn2;
else
/usr/bin/killall pptp >/dev/null 2>/dev/null
/bin/vpn0 >>/tmp/vpnlog 2>>/tmp/vpnlog;
fi
ppp1_ip=`/sbin/ifconfig ppp1 |/bin/egrep addr|/bin/awk '{print
$2}'|/bin/cut -f2 -d ":"|/bin/cut -f4 -d "."`
3.
if [ $tmp_ip != $ppp1_ip ]; then
/usr/bin/wget --http-user=111 --http-passwd=111 -O /dev/null
http://login.planetsky.com/?submitted=Yes
/bin/vpn2
else
/bin/vpn2
fi
Вобщем хотелось чтобы 1. проверяется наличие ппп2, далее записывается
ip ппп1(земля) в файл т.к. чтобы подключиться к ппп2 нужно
авторизировать наземный ip
на сайте, далее часть 2 это проверяется интерфейс ппп2 не подвис ли он
(но такая конструкция не работает ) и если подвис то переподымается а
остальная часть должна игнорироваться но если интерфейса ппп2 нет то
должна выполняться он и только.
Помогите расставить правельно if then else ну и выскажитесь как бы
можно было что-то изменить может есть более правильные методы...
заранее благодарю
в /bin/vpn0 & 2
прописаны маршруты и пптр подключения до провайдеров.
--
Best regards w00t
-*Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 22139; Возраст листа: 818; Участников: 1430
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/459893
В сообщении от 1129839483 секунд после начала Эпохи w00t написал(а):
Для начала вставьте сразу после строки `#!/bin/bash' строки:
[ "$PATH" != "${PATH//\/bin}" ] || PATH="$PATH:/bin"
[ "$PATH" != "${PATH//\/usr\/bin}" ] || PATH="$PATH:/usr/bin"
после чего уберите во всех командах приставки `/bin/' и `/usr/bin/'.
Отформатируйте код, сделайте отступы. А потом показывайте тут. Потому
что, то что вы сейчас показали читать невозможно.