python paramiko在关闭连接时出现问题

python paramiko在关闭连接时出现问题,python,ssh,paramiko,Python,Ssh,Paramiko,我刚刚尝试了与paramiko的ssh连接。 看起来一切正常,但在最后一步,调用close()方法断开客户端连接时 这是我的剧本: #!/usr/bin/python import paramiko import os ssh = paramiko.SSHClient() private_key = os.path.expanduser('~/.ssh/id_dsa') mkey = paramiko.DSSKey.from_private_key_file(private_key,pass

我刚刚尝试了与
paramiko
的ssh连接。 看起来一切正常,但在最后一步,调用
close()
方法断开客户端连接时

这是我的剧本:

#!/usr/bin/python

import paramiko
import os

ssh = paramiko.SSHClient()
private_key = os.path.expanduser('~/.ssh/id_dsa')
mkey = paramiko.DSSKey.from_private_key_file(private_key,password='JacquiKoala')
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('monitor', username='probert', pkey = mkey)
stdin, stdout, stderr = ssh.exec_command('whoami')
print stdout.readlines()
ssh.close
shell只是挂起,我可以键入东西,没有任何结果,Ctrl+C或Ctrl+D不会停止脚本或连接。除了关上有点脏的贝壳窗,我别无选择

我正在运行Ubuntu10.10,使用源代码编译的
Python2.6.6
paramiko-1.7.4

我真的不知道会发生什么;
close()
方法在执行后也会作为打印“blah”正确执行,没有错误消息,并且仍然连接,没有适当的方法停止它

谢谢你帮我:)

干杯


菲利普;DR:您没有调用该函数。使用
ssh.close()
而不是
ssh.close

ssh.close
是对该函数的引用。它告诉您有关函数的信息,但不调用函数。以下是一个例子:

def a():
    return 6

a
> <function a at 0x108f71aa0>
a()
> 6
def a():
返回6
A.
> 
()
> 6