2010-11-11 10 views
14

Я использую клиент Telnet Ubuntu. Я пытаюсь отправить 2 строки по telnet-соединению, которое я сделал.Как отправить возврат каретки через telnet?

Например:

> telnet en.wikipedia.org 80 
    GET /wiki/Main_Page http/1.1 <CR>       // line 1 
    Host: en.wikipedia.org   <CR>       // line 2 
    <CR> 

, где CR означает возврат каретки. Проблема заключается в том, что после ввода строки 1 нажмите CR, эта линия будет отправлена ​​по telnet-соединению. Я не могу отправить строку 2 сразу после этого.

Может ли кто-нибудь помочь?

+0

Вы пытались уйти от с «\», то есть, GET/вики/Main_Page HTTP/1.1 \ corriganjc

ответ

11

Когда вы работаете в клиенте Telnet, отправляя клиенту код управления новостью или кодом возврата каретки, он отправит его непосредственно на хост.

Самый простой способ сделать то, что вы хотите, это скопировать/вставить HTTP-запрос GET из другого текстового редактора, чтобы новые строки были встроены в текст.

+0

спасибо так много. вы сохраняете мою жизнь :-) – root

+3

, чтобы уточнить, кажется, что нажатие клавиши ввода, когда в сеансе telnet всегда будет отправляться либо '\ r ', либо '\ r \ n'. Единственный способ передать только '\ n' в конце строки - это скопировать/вставить его из другого места, как редактор. – Mark

30

Вы можете установить параметр crlf в telnet. Вы можете сделать это во время сеанса telnet, набрав escape-символ (^]), а затем «переключить crlf». Возможно уборщик способ указать это прежде, чем сделать соединение:

$ telnet 
telnet> toggle crlf 
Will send carriage returns as telnet <CR><LF>. 
telnet> open mailhost smtp 
+0

На окнах 8.1 вы должны использовать «set crlf» вместо «toggle crlf» – kirugan

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