从会话模式本身正常关闭telnet连接,而无需进入telnet提示符


16

普通的telnet连接是这样的:

telnet本地主机22
正在尝试127.0.0.1 ...
连接到本地主机。
转义字符为'^]'。
SSH-2.0-OpenSSH_4.2
^]
telnet>关闭
连接已关闭。

我想从telnet会话本身关闭它,而不必按进入telnet提示符。我的要求是,如果我从telnet会话本身按一些控制字符,例如CTRL + A,则它将退出会话并自动关闭。像这样的东西:

$ telnet本地主机22
正在尝试127.0.0.1 ...
连接到本地主机。
转义字符为'^]'。
SSH-2.0-OpenSSH_4.2
^ A
连接已关闭。
$

我尝试了手册页上给出的所有选项,并尝试进行一些$ HOME / .telnetrc文件测试,但无法实现,因为telnetrc会在给定主机的telnet被执行时执行与给定主机写入的所有命令。完成。

任何人都可以在这方面帮助我,例如如何实现。


它是如此复杂..

对于使用退出,我还需要先进入telnet提示符。对。虽然我的要求是关闭连接,但不进入telnet提示符即可退出会话模式(即,要进入telnet提示符,我需要先发送转义字符,然后我才能关闭或退出)。
Kumar Alok 2010年

@保罗:我不明白你的意思。您能告诉我在哪里可以找到解决方案。
Kumar Alok 2010年

3
您能解释为什么有人想要吗?Telnet只是一个客户端程序,用于连接到某些计算机上的任意服务。如果使用端口23,则可以连接到telnet 服务,并可以使用终止登录exit,但这是一个shell命令,而不是telnet命令。如果所连接的服务没有提供终止连接的命令,则必须转到telnet提示符以终止连接。如果要通过ssh登录到远程计算机,请使用ssh命令,否则telnet(除非要进行手动加密)。
本杰明·班尼尔

Answers:


33

不,telnet客户端(我想您正在询问有关Linux的客户端仅支持一个转义字符Ctrl]^])。

如果您只是telnet用来建立任意的TCP连接,请考虑使用netcatsocat;只需按一下即可中断这些操作CtrlC


9
对于关注者,请按住Ctrl键,然后按“右括号”键,然后按Enter键。它将以类似的提示进行响应,telnet>您可以键入quit并按Enter键以退出会话。!
rogerdpack 2015年

@rogerdpack谢谢。这是在OSX上退出的方式。
chhantyal,2015年

如果我使用的语言环境在键盘布局的alt- <其他键>下有右括号,该怎么办?ctrl-alt- <另一个键>不起作用。
user628418 '19

然后,您切换键盘布局,或使用屏幕键盘...
user1686 '19

-4

好的old CTRL+ D又名EOF呢?


1
它只有在会话的服务器端进行处理时才有效。通常这是不正确的(在提到的22端口ssh连接中也不是正确的)。
Andrey Regentov
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.