获取paramiko的实时输出信息(转)

add by zhj:其实两种方案区别很小,就是在stdout读取时有细微的区别

原文:https://www.cnblogs.com/t-road/p/13963759.html

作者:道霖

方案一:

ssh_client = paramiko.SSHClient()ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect(hostname=ip, port=port, username='root', password=destpass)
stdin, stdout, stderr = ssh_client.exec_command("sh a.sh", get_pty=True)

while not stdout.channel.exit_status_ready():
    result = stdout.readline()
print result
# 由于在退出时,stdout还是会有一次输出,因此需要单独处理,处理完之后,就可以跳出了 if stdout.channel.exit_status_ready(): a = stdout.readlines() print a
break ssh_client.close()

方案二:

python - Paramiko with continuous stdout - Stack Overflow

posted @ 2023-11-21 16:31  奋斗终生  Views(234)  Comments(0Edit  收藏  举报