成功连接后,如何通过ssh连接到主机,运行命令并获取输出

时间:2019-01-10 13:17:55

标签: python

  1. 我尝试通过ssh子进程连接到主机
  2. 连接后,我试图运行命令子进程并获取输出
  3. 我的脚本在1个函数“ main”上停止
  4. 我不能使用paramiko lib


import subprocess

host_list = ['host']


def main():
    print("Running latency check")
    for item in host_list:
        host = ''.join(item)
        connect_to_host(host)


def connect_to_host(host):
    print(host)
    ssh = subprocess.Popen(['ssh', '-o', 'ConnectionAttempts=3', host], shell=True,
                           stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    for ssh_line in iter(ssh.stdout.readline, ""):
        yield ssh_line
    ssh.stdout.close()
    get_legend = subprocess.Popen(['command'], shell=True,
                                  stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    for get_legend_line in iter(get_legend.stdout.readline, ""):
        yield get_legend_line
    get_legend.stdout.close()


main()

脚本在第一个功能上停止,只需打印“运行延迟检查”

0 个答案:

没有答案
相关问题