zoukankan      html  css  js  c++  java
  • python模块之paramiko

    一、安装

    pip install paramiko
    

    二、连Linux服务器的2种方式

    2.1、方式一

    import paramiko
    
    def sshExeCMD():
        client = paramiko.SSHClient()
        # 允许连接不在~/.ssh/known_hosts文件中的主机
        client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        # 输入ip,端口,账号,密码
        client.connect('ip', 22, '账号', '密码')
        '''
            1、标准输入      用于实现交互式命令
            2、标准输出      保存命令正常执行结果
            3、标准错误输出   保存错误信息
        '''
        stdin, stdou, stderr = client.exec_command('pwd')
        # print(stdin)
        print(stdou.read().decode('utf8'))
        # print(stderr)
    
        client.close()
    
    if __name__ == '__main__':
        sshExeCMD()
    
    

    2.2、方式二

    transport = paramiko.Transport('ip', 22)
    transport.connect(username='username', password='password')
    ssh = paramiko.SSHClient()
    ssh._transport = transport
    

    三、上传和下载文件

    import paramiko
    
    
    def SshFileOP():
        # 连接服务器
        ssh_conn = paramiko.Transport('ip', 22)
        ssh_conn.connect(username='username', password='password')
    
        # 基于上述ssh连接创建tfp客户端,传入的参数是上面建立的连接
        ftp_client = paramiko.SFTPClient.from_transport(ssh_conn)
    
        # 下载文件,从Linux服务器上下载文件,第一个是服务器文件路径,第二个是Windows10本地路径
        #ftp_client.get("/etc/hosts", "D:pythonparamikodatahosts")
    
        # 上传文件
        ftp_client.put("a.jpg", "/tmp/a.jpg")
        ssh_conn.close()
    
    if __name__ == '__main__':
        SshFileOP()
    
  • 相关阅读:
    mysql数据库中的锁
    HihoCoder
    旅游规划(双权连通图)
    单调栈的原理
    战争联盟(并查集)
    点赞狂魔(巧用STL容器事半功倍)
    这是二叉搜索树吗?
    好像是两种权的dijkstra
    pat--046.整除光棍(除法模拟)
    幸运数字 2
  • 原文地址:https://www.cnblogs.com/hsyw/p/13776063.html
Copyright © 2011-2022 走看看