python telnet 客户端通过带选项卡完成的套接字

标签 python sockets telnet

我有这个例子:

# s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# s.settimeout(2)

# connect to remote host via s.connect((host, port))


while 1:
    socket_list = [sys.stdin, s]

    # Get the list sockets which are readable
    read_sockets, write_sockets, error_sockets = select.select(socket_list , [], [])

    for sock in read_sockets:
        #incoming message from remote server
        if sock == s:
            data = sock.recv(4096)
            if not data :
                print 'Connection closed'
                sys.exit()
            else :
                #print data
                sys.stdout.write(data)

        #user entered a message
        else :
            msg = sys.stdin.readline()
            s.send(msg)

它可以工作,但如果没有 bash 完成会让人不舒服。

如何添加“制表符”自动完成,如下所示:

user@test:~$ pyt       <<< (PRESS TAB)
user@test:~$ python    <<< Auto complete

最佳答案

自动完成功能来自您的 shell 程序(例如 bash),当您启动脚本时它不再可用,因为终端与您的程序交互。

恐怕您将不得不实现自己的完成。

关于python telnet 客户端通过带选项卡完成的套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29235882/

相关文章:

bash - 从 bash 捕获 telnet 超时

Perl Net::Telnet 在大命令输出上超时

c++ - 在 Windows 环境中使用 C/C++ 联网

python - 两个等高线图的颜色条

python - 在创建对象时返回对象以外的东西

python - 在 Windows 上,后台线程接收 zmq 消息失败

c++ - zeromq:重置 REQ/REP 套接字状态

android - 使用 Wi-Fi direct 的点对点数据共享

shell - 测试远程 TCP 端口是否从 shell 脚本打开

python - numpy 重复元素