Legacy
Общие сведения[править]
LEGACY telnet-скрипты представляют из себя крайне простые скрипты без какой-либо поддержки логики.
Каждая строка скрипта может быть либо командой, либо комментарием.
Доступны всего 3 команды send
, expect
и telnet
. При этом telnet
по сути является псевдо-командой. Она просто открывает новую телнет-сессию и допустима лишь вначале telnet-скрипта команды CommutatorLogin
и больше нигде.
После каждой команды ставится пробел, после которого вся последующая строка интерпретируется как последовательность отправляемых или ожидаемых символов. В кавычки эту строку брать не нужно. Внутри этой строки допустимо использовать переменные. Все переменные начинаются со знака процента (%
) и обязаны отделяться слева и справа пробелом или переводом строки.
Комментарии начинаются с #
и перед комментарием в той же строке не должно быть команд.
Пустые строки допустимы.
Доступные команды:[править]
telnet %host
[править]
Открыть telnet-сессию на %host
. Данная команда должна использоваться только в скрипте залогинивания на свитч (команда CommutatorLogin
). В других скриптах ее использовать не нужно. Все остальные скрипты сразу начинаются с send
.
send string
[править]
Послать string
в telnet-сессию. Каждый скрипт (кроме команды CommutatorLogin
) должен начинаться с этой команды.
expect string
[править]
Ожидать, пока telnet-сессия вернет string
. Каждый скрипт (кроме команды CommutatorLogout
) должен заканчиваться этой командой.
Примеры:
-
expect %prompt
-
expect #
-
expect reconfigure
В любом месте строки string
можно вставить переменную (аргумент команды).
Аргументы команды должны использоваться в скрипте с предваряющим знаком %
(например %port_name
или %login
).
Так же во всех скриптах доступна предопределенная в модели свитча переменная %prompt
, подставляющая специфичный для данной модели коммутатора prompt (например #
).
Пример скрипта залогинивания на свитч:
telnet %host expect ogin: send %login expect assword: send %password expect %prompt
Пример скрипта, задающего имя коммутатору:
send config expect %prompt send hostname %name expect %prompt send sysContact admin@berdyansk.net expect %prompt send exit expect %prompt
Пример скрипта разлогинивания со свитча:
send exit