Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/34: Рейтинг темы: голосов - 34, средняя оценка - 4.79
b0roda4
1

Зайти по telnet на роутер, проверить статус и при необходимости перезагрузить

11.11.2012, 18:30. Показов 6274. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер.

Появилась необходимость написать скрипт на bash. Задача: зайти по telnet на роутер, проверить его статус и при необходимости перезагрузить.
Пытался использовать как bash, так и expect. На баш получилось вот что:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/bin/bash
(
  sleep 2
  echo "admin"
  sleep 2
  echo "admin"
  sleep 1
  string= 'date'
  sleep 2
  echo "$string"
  sleep 1
) | telnet 192.168.0.1
sleep 2
echo "$string"
  substring= ' echo "MSK" '
  sleep 2
   echo  expr "$string" : '$substring'
  sleep 2
Заходит на роутер, смотрит Дату(вывод: Вс. нояб. 11 18:22:29 MSK 2012),записывает её в переменную $string, однако не полностью, а только до первого пробела (Вс.). Так же когда выходит из telnet, он забывает это значение и ничего не выводит при echo "$string". Ещё проблема при записи в переменную $substring - он её просто не распознает (echo "MSK" : команда не найдена). Подскажите, как сделать так, что бы скрипт запоминал всю строчку вывода команды Date и как записать в переменную substring какое-то значение, чтобы потом сравнить его с этим самым выводом Date?
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.11.2012, 18:30
Ответы с готовыми решениями:

Перезагрузить роутер через Telnet
@echo off telnet 192.168.0.1 telnet send reboot pause строка 'telnet send reboot' не хочет...

Програмно перезагрузить интернет (роутер)
Мне нужно перейти по адресу 92.168.1.1 ввести туда admin admin и затем нажать на кнопку...

Зайти на коммутатор с помощью Telnet
Привет всем! кто может помочь нубу в bat файлах! ситуация такая. нужно Telnet-ом заходить на...

Telnet и роутер!
Всем привет! Столкнулся с такой проблемой: Решил попробовать подключиться через Telnet к своему...

2
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
12.11.2012, 02:39 2
пробел в присваивании ни до, ни после равно не надо ставить

Bash
1
2
3
4
5
6
7
8
9
10
11
func()
{
    cmds=\
"
ehlo x
quit
"
    res=$(echo "$cmds" | nc smtp.yandex.ru 25)
 
    echo "<$res>"
}
пример
Код
[guest@localhost ~]$ func()
> {
>     cmds=\
> "
> ehlo x
> quit
> "
>     res=$(echo "$cmds" | nc smtp.yandex.ru 25)
> 
>     echo "<$res>"
> }
[guest@localhost ~]$ func
<220 smtp6.mail.yandex.net ESMTP (Want to use Yandex.Mail for your domain? Visit http://pdd.yandex.ru)
502 5.5.2 Syntax error, command unrecognized.
250-smtp6.mail.yandex.net
250-8BITMIME
250-PIPELINING
250-SIZE 42991616
250-STARTTLS
250-AUTH LOGIN PLAIN
250-DSN
250 ENHANCEDSTATUSCODES
>21 2.0.0 Closing connection.
[guest@localhost ~]$
0
b0roda4
12.11.2012, 18:15 3
Да, спасибо за помощь. В принципе разобрался со всем, тему можно закрыть)
12.11.2012, 18:15
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.11.2012, 18:15
Помогаю со студенческими работами здесь

Проблемы с входом в роутер по SSH или Telnet
Здравствуйте! Моя проблема заключается в следующем: Есть роутер Sagemcom F@st 1744, v4. Версия ПО:...

Зайти на роутер из вне
Плмогите зайти на роутер по внешнему ip.. на сколько я понимаю не пускает провайдер(дом.ру).. если...

Не могу зайти на роутер
Привет всем, такая проблема буквально 2 дня назад появилась проблема. Я как раньше пытался зайти на...

Как зайти на роутер
Вопрос может и смешной, но всё таки, есть доступ к webmin (удаленка), как попасть на роутер,...

Не могу зайти в роутер TP-Link
Всем привет! Подключил к компьютеру роутер TP-Link WR740N. Не могу зайти в настройки через...

Как зайти на роутер за ADSL модемом?
Люди добрые, подскажите как зайти на роутер за, который стоит за АДСЛ модемом, т.е. схема...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru