The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Раздел полезных советов: expect для автоматизации операций т..."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Раздел полезных советов: expect для автоматизации операций т..."  +/
Сообщение от auto_tips (ok) on 21-Июл-09, 16:49 
#!/usr/bin/expect -f # Забор файла по FTP
spawn ftp ftp.test.ru
expect  "Name*:" { send "ftp\n"}
expect  "Password:" { send "ftp@\n"}
expect "ftp>" {send "bin\n"}
expect "ftp>" {send "prompt no\n"}
expect "ftp>" {send "cd /pub/store\n"}
expect "ftp>" {send "get arc.tar.gz\n"}
expect "ftp>" {send "exit\n"}

#!/usr/bin/expect -f # Выполнение операции используя telnet
spawn telnet cisco.test.ru
expect  "login:" { send "adm\n"}
expect  "Password:" { send "пароль\n"}
expect "#" {send "show users\n"}
expect "#" {send "exit\n"}


URL:
Обсуждается: http://www.opennet.dev/tips/info/583.shtml

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "expect для автоматизации операций требующих ручного ввода"  +/
Сообщение от shadow_alone (ok) on 21-Июл-09, 16:49 
вот сделал очень удобный скриптик для работы со своими рутерами и свитчами:
#!/usr/bin/expect -f
set mycommand [lrange $argv 1 $argc]
spawn /usr/bin/telnet [lindex $argv 0]
expect  "Username:" { send "логин\n"}
expect  "Password:" { send "пароль\n"}
expect ">" {send "en\n"}
expect  "Password:" { send "пароль_на_enable\n"}
expect "#" {send "terminal length 0\n"}
expect "#" {send "$mycommand \n"}
expect "az#" {send "terminal no length 0\n"}
expect "#" {send "exit\n"}

запускаем
скрипт куда_коннектимся команда

возникает лишь одна проблема, например при выводе sh run
из-за того что скрипт ждет "#", он обрывает вывод, если есть строки с "#". Вылечил просто - жду вывод не "#" а ".az#" - девайсы имеют имя с окончанием на .az

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "expect для автоматизации операций требующих ручного ввода"  +/
Сообщение от vaden email on 10-Ноя-09, 19:14 
а как перенаправить вывод "sh run" в файл?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "expect для автоматизации операций требующих ручного ввода"  +/
Сообщение от munsera email(ok) on 17-Фев-11, 15:40 
У меня после автоматического ввода пароля коннект отваливается. В чем проблеима?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "expect для автоматизации операций требующих ручного ввода"  +/
Сообщение от Shaker on 06-Сен-11, 11:41 
Добавьте в конец скрипта interact.
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру