zoukankan      html  css  js  c++  java
  • ssh connect

    import paramiko

    def ssh2(ip,username,passwd,cmd):
        try:
            ssh = paramiko.SSHClient()
            ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
            paramiko.util.log_to_file("filename.log")
            ssh.connect(ip,22,username,passwd)
            print "11111111111111111"
            for m in cmd:
                print m
                stdin, stdout, stderr = ssh.exec_command(m)
                out = stdout.readlines()
                for o in out:
                    print o,
            print "%s OK "%(ip)
            ssh.close()
        except:
            print "%s Error "%(ip)

    if __name__=="__main__":
        ip = "192.168.111.162"
        username = "root"
        passwd = "asdf1234"
        print "Begin...."
        cmd=["ls",
            "which python"]
        ssh2(ip,username,passwd,cmd)

     def ssh_exec(hostname, port, username, key, password, component, content):
        cmd  = "zgrep " + content + "/dir" + component + "/* | sort -t: -k 2.1,4 "
        s = paramiko.SSHClient()
        s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        s.connect(hostname=hostname, port=port, username=username, pkey=key, password=password)
        ssh = s.invoke_shell()
        time.sleep(0.1)
        ssh.send('su - ')
        buff = ''
        sleep_loop = 0
        while not buff.endswith('Password: '):
            resp = ssh.recv(9999)
            buff +=resp
        time.sleep(0.5)
        ssh.send(root_pwd)
        ssh.send(' ')
        buff = ''
        while not buff.endswith('# '):
            resp = ssh.recv(9999)
            buff +=resp
            time.sleep(1)
            sleep_loop +=1
            if sleep_loop == 3:
                raise Exception('Please confirm root password, or contact developer.')
        ssh.send(cmd)
        ssh.send(' ')
        buff = ''
        while not buff.endswith('# '):
            resp = ssh.recv(9999)
            buff +=resp
        s.close()
        result = buff
        print result

     
  • 相关阅读:
    给数组赋值nan
    loc和iloc的区别
    爬虫26-部署crawl爬虫
    爬虫25-scrapy框架详解
    爬虫24-scrapy框架部署
    爬虫23-验证码识别
    爬虫22-使用selenium爬取信息
    爬虫21-selenium用法
    爬虫20-浏览器自动运行简单方法
    爬虫19-线程生产者和消费者以及队列
  • 原文地址:https://www.cnblogs.com/yaoweilei/p/4948824.html
Copyright © 2011-2022 走看看