Как автоматизировать команды Telnet, используя скрипт VB

  • Mark Lucas
  • 0
  • 4573
  • 625
Реклама

Написание пакетных заданий (.bat Как создать пакетный файл (BAT) за пять простых шагов Как создать пакетный файл (BAT) за пять простых шагов) В этой статье рассказывается, как создать пакетный файл с помощью пяти простых шагов для операционной системы Windows. .) и более поздние сценарии Windows 3 Удивительные вещи, которые вы можете сделать с помощью сценариев Windows 3 Удивительные вещи, которые вы можете сделать с помощью сценариев Windows Независимо от того, работаете ли вы в области ИТ, веб-дизайнером или просто студентом или обычным офисным работником, Сценариям Windows есть что предложить. Конечно, Applescript также делает то, что… (.wsf) - это действие, которое действительно составляет большую часть того, как подавляющее большинство сетевых и системных администраторов выполняют свою работу быстрее, и упрощает то, что в противном случае было бы трудоемким и сложным заданием. Используя пакетные задания, вы можете автоматизировать установку и удаление приложений, выполнить инвентаризацию программного обеспечения и настроек ОС всех компьютеров в вашей сети, а также множество других запросов и заданий. Однако существуют определенные задачи, которые иногда проходят несколько уровней аутентификации, например, telnet.

Многим сетевым администраторам приходится подключаться к сетевым коммутаторам через telnet, чтобы запрашивать или настраивать порты, отслеживать состояние систем или даже перезагружать сетевые устройства, которые принимают команды через telnet. Разве не было бы замечательно, если бы вы могли автоматизировать задания telnet, как если бы вы писали обычные пакетные задания?

Правда в том, что если вы привыкли использовать сценарий VB для создания сценариев Windows (или даже если нет), сценарии VB предоставляют очень полезную функцию, позволяющую установить сценарий оболочки Windows как объект, а затем выполнить его. “объект” тщательно рассчитанные команды. По сути, это то же самое, что вы сидите за окном команд и набираете команды. Разница лишь в том, что ваш скрипт Windows отправляет окну команды для вас.

Автоматизируйте работу Telnet

Эта задача состоит в основном из двух частей. Вам нужно установить последовательность команд, которую вы хотите выполнить во время типичного сеанса telnet.

Вот что я хочу сделать. У меня есть 5 устройств по всей сети, которые можно удаленно перезагрузить через telnet, выполнив 4 простые команды. Я должен сначала Telnet к нему, используя IP-адрес и определенный порт. Затем появляется меню, и я должен сначала нажать Enter.

После того, как я нажму Enter во время этой сессии telnet, в следующем меню ожидается числовой ответ, а затем Enter.

Звучит немного невозможным для сценариев, не так ли? Ну, никогда не стоит недооценивать силу Visual Basic.

Теперь есть другие способы сделать это. Просто посмотрите статью Абхигьяна на Tst10.exe, чтобы увидеть, как некоторые люди любят использовать метод сценариев Tst для автоматизации сеансов telnet. К сожалению, вы также увидите, что это может быть немного сложным для тех, кто не привык писать много скриптов. Tcl - еще один аналогичный язык сценариев, который программисты годами использовали для одной и той же задачи..

Тем не менее, я собираюсь показать вам, как файл сценария VB будет выполнять те же задачи за меньшее время и с использованием сценария, который монументально легче понять.

Итак, вот что мы собираемся сделать. Я собираюсь разбить сценарий на разделы. Поместите все это в текстовый файл, который называется что-то вроде Autotelnet.wsf, двойной щелчок, и он запустится.

Сначала установите сеанс telnet:

Вариант Явный
При ошибке возобновить следующее
Дим WshShell
set WshShell = CreateObject ("WScript.Shell")
WshShell.run "cmd.exe"
WScript.Sleep 1000
«Отправлять команды в окно по мере необходимости - IP и команды должны быть настроены
«Шаг 1 - Telnet к удаленному IP»
WshShell.SendKeys "telnet xx.xx.xx.73 9999"
WshShell.SendKeys ("Enter")
WScript.Sleep 1000

Раздел кода выше автоматически откроет командное окно, а затем подключится к устройству по какому-либо конкретному порту, к которому нужно подключиться. замещать “иксы” с вашим собственным IP.

Команда sleep будет ждать достаточно долго, пока устройство ответит и предложит вашему сценарию следующую команду. Убедитесь, что это время ожидания достаточно для выполнения этого действия.

Во-вторых, вам нужно посылать каждую команду по одной, предоставляя достаточно времени ожидания между ними, чтобы сеанс telnet мог ответить.

«Шаг 2 - выдача команд с паузами»
WshShell.SendKeys ("Enter")
WScript.Sleep 1000
WshShell.SendKeys "5"
WshShell.SendKeys ("Enter")
WScript.Sleep 1000

В этом примере я выпустил две команды, которые я отметил выше. Во-первых, у меня есть скрипт отправить “Войти” команда, подождите секунду, затем отправьте “5” и нажмите “Войти” снова. Этот короткий ряд действий будет выполняться точно так же, как если бы вы сидели перед окном команд telnet, выполняя их самостоятельно. Вам просто нужно настроить этот скрипт, чтобы он выполнял точные ответы, необходимые для сеанса telnet..

Наконец, не забудьте закрыть командное окно и завершить скрипт.

Шаг 3 - Выход из окна команд
WshShell.SendKeys "выход"
WshShell.SendKeys ("Enter")
WScript.Quit 

Это все, что нужно для автоматизации telnet - три простых шага внутри очень простого скрипта. Просто возьмите три раздела выше и настройте их по своему желанию. Вы будете автоматизировать все свои задачи поддержки для управления сетевыми коммутаторами, таймерами или другими удаленными системами, которые обмениваются данными через telnet.

Если у вас есть повторяющиеся задачи, которые вам приходится делать часто, сделайте свою жизнь намного проще, создав автоматизированные сценарии Windows, которые будут выполнять эти задачи за вас. Вы будете более продуктивными, и ваш босс будет действительно впечатлен!

Есть ли у вас какие-либо другие идеи для классных задач, которые вы могли бы автоматизировать с помощью такого сценария Windows? Как вы автоматизировали свои собственные задачи telnet? Поделитесь своими мыслями и знаниями в разделе комментариев ниже.

Изображение предоставлено: Shutterstock




О современных технологиях, просто и доступно.
Ваш гид в мире современных технологий. Узнайте как использовать технологии и гаджеты, которые нас окружают каждый день и научитесь открывать интересные вещи в Интернете.