2016-09-07 9 views
0

Я автоматизирую команды telnet с помощью apache.commons.net в java. Я могу запустить программу как автономную, но в основном характер telnet является интерактивным, как я могу запускать команды telnet через файловую или строковую переменную?Автоматизация команд Telnet через файл или строку в Java

+2

И ваш код ...? –

ответ

0

Существует два способа управления программным интерфейсом любого интерактивного командного интерфейса.

  1. Простой способ: просто введите список команд и отправьте их один за другим с небольшой задержкой между ними.

  2. Сложный способ: иметь простую систему на основе правил, где вы читаете из удаленной системы и сопоставляете текст с одним или несколькими правилами. В зависимости от правила сопоставления вы затем выполняете действие, например, посылая команду.

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

Второй способ, в свою очередь, может быть прост, как чтение текста из удаленной системы, и если он не соответствует ожидаемому, а просто залог. Его также можно обрабатывать как простой finite state machine. Удобно спроектированные и реализованные, это также могло бы корректно обрабатывать проблемы связи.