2009-12-02 5 views
0

У меня есть служба, работающая на localhost: port. В сценарии bash я хочу подключиться к этому порту, отправить запрос и прочитать ответ - по существу, автоматизировать сеанс telnet. Каков наилучший способ сделать это? Я смотрю на/dev/tcp, netcat или telnet/expect.Сценарий Bash для подключения к открытому порту, отправить запрос, прочитать ответ

Благодаря

ответ

1

Netcat должен в значительной степени быть в состоянии сделать то, что вы хотите.

0

Ожидайте, если вы можете заставить его делать то, что вы хотите: его легко подбирать и работать, просто прочитав страницу руководства.

0

Expect был построен для выполнения этой точной задачи. Он будет обрабатывать не только диалог клиент/сервер, но также сценарии тайм-аутов, разъединений и т. Д. Он доступен в нескольких реализациях (Perl и Tcl два с моей головы), поэтому вы можете выбрать один, чтобы вписаться с вашим текущим стандартов и окружающей среды.

+0

Насколько я могу судить по этому поводу, это то, что он действительно ожидает конкретного ответа, например «Пароль». В этом случае я не знаю, что я получу - я просто хочу прочитать все, что вернется. –

+0

Я думаю, вы должны иметь возможность подстановочные знаки –

0

Я верю, что можно автоматизировать, я помню, видя команды Telnet (с помощью Ctrl + M маркеры для имитации возврата каретки) и ввода этих команд в текстовый файл и выдачи

телнет somehost

а также выход был отправлен на стандартный вывод (ваш терминал), который затем может быть захвачен.

Надеюсь, это поможет, С уважением, Tom.

P.S: Вот ссылка на что-то найденное, используя это в командной строке here.

+0

Как упоминалось antik & Brian Agnew, кажется, что это намного проще. :) – t0mm13b

 Смежные вопросы

  • Нет связанных вопросов^_^