• 09.paramiko


    01.Paramiko模块作用

    1)如果需要使用SSH从一个平台连接到另外一个平台,进行一系列的操作时,
    
    **比如:**批量执行命令,批量上传文件等操作,paramiko是最佳工具之一。
    2)paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接
    
    3)由于使用的是python这样的能够跨平台运行的语言,所以所有python支持的平台
    
    如Linux, Solaris, BSD,MacOS X, Windows等,paramiko都可以支持
    4)如果需要使用SSH从一个平台连接到另外一个平台,进行一系列的操作时,paramiko是最佳工具之一
    
    5)现在如果需要从windows服务器上下载Linux服务器文件:
    
    a. 使用paramiko可以很好的解决以上问题,它仅需要在本地上安装相应的软件(python以及PyCrypto)
    b. 对远程服务器没有配置要求,对于连接多台服务器,进行复杂的连接操作特别有帮助

    02.paramiko基于用户名密码连接

    2.1 远程执行命令

    import paramiko
    
    # 1 创建SSH对象
    ssh = paramiko.SSHClient()
    # 2 允许连接不在know_hosts文件中的主机
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    # 3 连接服务器
    ssh.connect(hostname='1.1.1.3', port=22, username='root', password='chnsys@2016')
    
    # 4 执行命令                                         #stdin标准输入: 自己输入的命令
    stdin, stdout, stderr = ssh.exec_command('pwd')      # stdout标准输出:  命令执行结果
    # 5 获取命令结果                                     #stderr标准错误:  命令执行报错的结果
    res, err = stdout.read(), stderr.read()
    result = res if res else err
    print(result.decode())                              #运行结果: /root
    
    # 6 关闭连接
    ssh.close()

    2.2 上传和下载

    import paramiko
    
    #1 连接客户端
    transport = paramiko.Transport(('10.1.0.50',22))
    transport.connect(username='root',password='chnsys@2016')
    
    #2 定义与客户端交互    将刚刚定义的transport当参数传递给他
    sftp = paramiko.SFTPClient.from_transport(transport)
    #3 将location.py 上传至服务器 /tmp/test.py
    sftp.put(r'C:bbfile.txt', '/tmp/file.txt')
    
    #4 将remove_path 下载到本地 local_path
    sftp.get('/tmp/file.txt',r'C:bbfile.txt')
    
    #5 关闭连接
    transport.close()
  • 相关阅读:
    jquery学习整理2 管理jQuery包装集
    _#结构还是内容
    【兼容】透明背景
    ☀【CSS3】文本阴影 textshadow
    ☀【CSS3】文本描边 textstroke / 文本填充色 textfillcolor
    ☀【zindex】
    _#【布局】block 与 inline 都有哪些元素
    【兼容】下划线跑出来啦
    【js】document.selection.createRange().text
    _#【语义】推荐使用的元素
  • 原文地址:https://www.cnblogs.com/xiaoxiamiaichiyu/p/14588100.html
Copyright © 2020-2023  润新知