首页 > 解决方案 > tn.close 不会关闭 telnet 连接?

问题描述

我有一个主机列表,我的任务是与每个主机建立 telnet 连接,收集一些操作的结果,然后转到下一个主机,但我注意到 tn.close() 不能正常工作我以为会的。

我认为 tn.close() 会关闭当前连接,以便我可以快速迭代到列表中的下一个主机,但它似乎不起作用。相反,我的代码会等到连接“由于不活动而关闭”,然后再转到列表中的下一个主机。任何想法为什么 tn.close() 不起作用?

我有的:

for host in hosts:
    try: 
        tn = telnetlib.Telnet()
        tn.open(host, 110, timeout=5)
        tn.write(command.encode('ascii'))
        output = tn.set_debuglevel(500)
        output = tn.read_until(b"...")

        if b"something" in output: 
            #Do something
            tn.close()

        else: 
            #Do something else
            tn.close()
        
        tn.close()

    except:
        print("Couldn't connect to server ", host) 
        tn.close()

标签: pythonpython-3.xtelnetlib

解决方案


推荐阅读