首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >帕拉米科:收集输出的ssh.exec_command表示开放通道作为响应

帕拉米科:收集输出的ssh.exec_command表示开放通道作为响应
EN

Stack Overflow用户
提问于 2014-01-06 22:06:29
回答 1查看 13.8K关注 0票数 5

我有包含paramiko和ssh的python脚本,如下所示

代码语言:javascript
复制
import paramiko

# setup ssh connection this works. no problem.
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
conn = ssh.connect(MACHINEIP, username=ROOTUSER, password=ROOTUSER_PASSWORD, port=22)

# This first ssh exec works perfect. 
(sshin1, sshout1, ssherr1) = ssh.exec_command(cmd1)

# When I print the output of 2nd and 3rd ssh exec, I get output saying of channel open
(sshin2, sshout2, ssherr2) = ssh.exec_command(cmd2)
print sshout2
(sshin3, sshout3, ssherr3) = ssh.exec_command(cmd3)
print sshout3

当多次使用exec_command收集输出时,输出中的通道打开消息:

代码语言:javascript
复制
<paramiko.ChannelFile from <paramiko.Channel 2 (open) window=2097152 
   -> <paramiko.Transport at 0x1d42bd0L (cipher aes128-ctr, 128 bits) 
(active; 1 open channel(s))>>>

<paramiko.ChannelFile from <paramiko.Channel 6 (open) window=2097152 
   -> <paramiko.Transport at 0x1d42bd0L (cipher aes128-ctr, 128 bits) 
(active; 2 open channel(s))>>>

如何关闭此打开的通道?或任何解决方案?我使用的是python 2.7。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-07 23:11:58

应该作为sshout.read()使用,而我只在打印时使用了sshout

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20951690

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档