Я автоматизирую команды telnet с помощью apache.commons.net в java. Я могу запустить программу как автономную, но в основном характер telnet является интерактивным, как я могу запускать команды telnet через файловую или строковую переменную?Автоматизация команд Telnet через файл или строку в Java
ответ
Существует два способа управления программным интерфейсом любого интерактивного командного интерфейса.
Простой способ: просто введите список команд и отправьте их один за другим с небольшой задержкой между ними.
Сложный способ: иметь простую систему на основе правил, где вы читаете из удаленной системы и сопоставляете текст с одним или несколькими правилами. В зависимости от правила сопоставления вы затем выполняете действие, например, посылая команду.
Первый способ действительно простой, но он не справляется с ошибками или проблемами очень хорошо. Если есть проблема, которую вы не заметите, то продолжение отправки команд может на самом деле сделать проблемы хуже.
Второй способ, в свою очередь, может быть прост, как чтение текста из удаленной системы, и если он не соответствует ожидаемому, а просто залог. Его также можно обрабатывать как простой finite state machine. Удобно спроектированные и реализованные, это также могло бы корректно обрабатывать проблемы связи.
И ваш код ...? –