faq обучение настройка
Текущее время: Вс июн 29, 2025 15:13

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
СообщениеДобавлено: Пн июн 06, 2011 07:51 
Не в сети

Зарегистрирован: Чт май 12, 2011 06:58
Сообщений: 26
Здраствуйте уважаемые!
Подскажите пожалуста как мне решить данную проблемму есть скрипт для подключения к коммутарору и выполнения на нем несколько комманд через telnet
Код:
#!/usr/bin/expect
#
set force_conservative 0
if {$force_conservative} {
        set send_slow {1 .1}
        proc send {ignore arg} {
                sleep .1
                exp_send -s -- $arg
        }
}
set timeout -1
set ip [lrange $argv 0 0]
match_max 100000
sleep .1
# коннектимся к узлу
spawn telnet $ip\n
expect "UserName:"
###################################################################
# Посылаем имя пользователя и ждем запроса пароля.
send "root\r"
expect "PassWord:"
####################################################################
# Посылаем пароль и ждем приглашения ввода командного интерпретатора.
send "pass\r"
expect "#"
#####################################################################
# вводим комманды список команд указывать в файле ./commands.txt.
set ufile [open "./commands.txt" r]
foreach uline [split [read $ufile] "\n"] {
set lin [lindex $uline]
send $lin\n
expect "#"
}
close $ufile
# Запоминаем результат в переменной. Он может быть отображён, или записан на диск.
puts stdout "Работа с коммутатором  $ip  завершена успешно!.\r"
# Завершаем сессию telnet, и ждем символа конца строки (eof).
send "logout\r"
expect eof


при использовании данного скрипта на коммутаторах D-link DES-3028 скрипт работает, при выполнении на DES-3526 скрипт не выполняется ибо коммутатор не может прочитать приглашение коммандного интерпритатора
Код:
expect "UserName:"

expect "PassWord:"

expect "#"

При "курении" доков и интернета по Expect я не нашел какого либо способа решить данную проблемму. Подскажите пожалуйста способ как мне проверить какое приглашение возврашяется или обойти это.. насколько я понимаю у expect не особо умеет со строками работать... а переписывать скрипт на питон не очень охото)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн июн 06, 2011 08:54 
Не в сети

Зарегистрирован: Пт май 05, 2006 16:52
Сообщений: 4181
Откуда: default
не ждите приглашения, просто отправляйте логин и пароль.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн июн 06, 2011 09:10 
Не в сети

Зарегистрирован: Чт май 12, 2011 06:58
Сообщений: 26
terrible писал(а):
не ждите приглашения, просто отправляйте логин и пароль.

Спасибо огромное! Помогло! все гениальное просто :D


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн июн 06, 2011 09:14 
Не в сети

Зарегистрирован: Вт янв 25, 2011 08:52
Сообщений: 15
то, что у DES-3526 приглашение выглядит не так:
UserName:
PassWord:

а так:
username:
password:

вам ни о чем не говорит?


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Пн июн 06, 2011 12:50 
Не в сети

Зарегистрирован: Ср июн 01, 2011 07:21
Сообщений: 30
и вообще все нормальные люди давно используют Net::Telnet.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Вт июн 07, 2011 20:36 
Не в сети

Зарегистрирован: Пт май 05, 2006 16:52
Сообщений: 4181
Откуда: default
нормальные люди использую shell, а не perl


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср июн 08, 2011 06:46 
Не в сети

Зарегистрирован: Чт авг 26, 2010 16:34
Сообщений: 514
Откуда: North KZ south Kokchetav
terrible писал(а):
нормальные люди использую shell, а не perl

Не согласен, тут дело вкуса.


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: Ср июн 29, 2011 06:52 
Не в сети

Зарегистрирован: Чт май 12, 2011 06:58
Сообщений: 26
Самое простое решение иногда самое лучшее


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 58


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB