我正在尝试使用telnetlib库在python中发送control + ]
命令。
我目前正在做
tn.write('^]')
还有
tn.write('\x1D')
我从http://donsnotes.com/tech/charsets/ascii.html那里得到的
要输入control-A
,我使用tn.write('\x01')
,它可以工作,所以我很困惑为什么tn.write('\x1D')
对control-]
不起作用。
感谢您的帮助
答案 0 :(得分:0)
ctrl-]
无法通过网络发送。您必须使用close()
要进一步阅读,请在此处查看准确答案:https://mail.python.org/pipermail/python-list/2012-December/636929.html
答案 1 :(得分:0)
实际上没有将^]命令发送到服务器。这是对telnet客户端的命令。当您运行telnet
程序(完全与python不相关)时,您会看到:
~$ telnet localhost 2050
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
这意味着^]
是一个转义字符。这是一种使本地telnet程序退出将所有内容发送到服务器的输入模式,然后进入接受本地命令的输入模式的方法。在这种情况下,键入^]
时,telnet程序不会将其发送到服务器,而只会更改输入模式。
由于您是使用telnet协议直接连接到服务器,而不是使用telnet 程序,因此发送^]
毫无意义。