从boto sshclient获取run_pty输出的正确方法

时间:2014-12-30 19:43:11

标签: python boto paramiko

我正在尝试在需要sudo的ec2实例上执行远程命令。

示例代码段

conn = boto.ec2.connect_to_region(....)
instance = conn.get_only_instances(instance_ids=instance_id)[0]
ssh_client = sshclient_from_instance(instance, ssh_key_file='path.to.pem,user_name='ec2-user')
chan = ssh_client.run_pty('sudo ls /root')

仅使用ssh_client.run()返回一个易于处理但不允许sudo的元组。 run_pty正在返回paramiko.channel.Channel,我可以使用recv()来获取一些输出,但我不清楚如何获得整个stdout。

0 个答案:

没有答案