python使用paramiko模块实现ssh远程命令执行,与sftp文件下载功能

python使用paramiko模块实现ssh远程命令执行,与sftp文件下载功能,其余方法查看API:

#-*- coding: utf-8 -*-
#!/usr/bin/python
import paramiko


def ssh2(ip, username, passwd, cmd, port=6802):
    try:
        # 创建ssh实例
        ssh = paramiko.SSHClient()
        # 设置策略
        ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        # 进行连接
        ssh.connect(ip, port, 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\tOK\n' % (ip)
        ssh.close()
    except Exception,e:
        print '%s\tError\n' % (ip)
        print e.message
def ssh_getfile(ip, username, passwd, remotepath, localpath, port=6802):
    # 创建传输实例
    t = paramiko.Transport((ip ,port))
    #创建scoket
    t.connect(None,username, passwd)
    #创建sftp
    sftp = paramiko.SFTPClient.from_transport(t)
    #下载文件
    sftp.get(remotepath, localpath)
    t.close()

if __name__ == '__main__':
    cmd=['/usr/bin/python /opt/ding/get_aaa_file.py']
    ssh2('182.106.XX.XX','user','passwd',cmd)
    ssh_getfile('182.106.XX.2','user','passwd','/home/liu/aaa.txt','/home/liu/aaa.txt',22)


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值