zoukankan      html  css  js  c++  java
  • python 多线程 paramiko实现批量命令输入输出

    远程批量执行命令  实现多线程执行 速度快 实现多并发登录 

    #-*- coding: utf-8 -*-
    #!/usr/bin/python
    import paramiko
    import threading
     
    def ssh2(ip,username,passwd,cmd):
        try:
            ssh = paramiko.SSHClient()
            ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
            ssh.connect(ip,22,username,passwd,timeout=5)
            for m in cmd:
                stdin, stdout, stderr = ssh.exec_command(m)
    #           stdin.write("Y")   #简单交互,输入 ‘Y’
                out = stdout.readlines()
                #屏幕输出
                for o in out:
                    print o,
            print '%s	OK
    '%(ip)
            ssh.close()
        except :
            print '%s	Error
    '%(ip)
     
     
    if __name__=='__main__':
        cmd = ['cal','echo hello!']#你要执行的命令列表
        username = "root"  #用户名
        passwd = "123123"    #密码
        threads = []   #多线程
        print "Begin......"
    #    for i in range(1,254):
        ip = '192.168.1.19'
        a=threading.Thread(target=ssh2,args=(ip,username,passwd,cmd))
        a.start()
     
  • 相关阅读:
    GolandQuick编辑器快捷键
    GitStand
    高阶函数
    文本和字节序列
    元组用法
    映射的弹性键查询
    字典的setdefault()
    数组、内存视图、双向队列
    Python之random.seed()用法
    用bisect来管理已排序的序列
  • 原文地址:https://www.cnblogs.com/yexiaochong/p/5553121.html
Copyright © 2011-2022 走看看