【问题标题】:How do I send telnetlib control + ] command in python如何在 python 中发送 telnetlib control + ] 命令
【发布时间】:2018-12-13 07:32:40
【问题描述】:
我正在尝试使用 telnetlib 库在 python 中发送control + ] 命令。
目前我在做:
tn.write('^]')
还有
tn.write('\x1D')
我从http://donsnotes.com/tech/charsets/ascii.html得到的
输入control-A 我使用tn.write('\x01') 并且它有效,所以我很困惑为什么tn.write('\x1D') 不适用于control-]。
感谢您的帮助
【问题讨论】:
标签:
python
python-2.7
telnet
telnetlib
【解决方案2】:
^] 命令实际上并未发送到服务器。它是对 telnet 客户端的命令。当您运行telnet 程序(与python 完全无关)时,您会看到:
~$ telnet localhost 2050
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
这意味着^] 是一个转义字符。这是一种使本地telnet程序退出将所有内容发送到服务器的输入模式,并进入接受本地命令的输入模式的方法。在这种情况下,当你输入^] 时,telnet 程序不会将它发送到服务器,它只会改变输入模式。
由于您使用 telnet 协议直接连接到服务器,而不是使用 telnet 程序,因此发送^] 没有意义。