zoukankan      html  css  js  c++  java
  • Python使用paramiko远程连接服务器及上传文件

    paramiko是一个基于SSH2的Python三方包,可以用于连接远程服务器,执行命令或上传下载文件等。

    安装方法:pip install paramiko

    使用SSH连接远程服务器并执行命令

    import paramiko
    
    paramiko.util.log_to_file('syslogin.log')  # 设置运行日志
    
    ssh_cli = paramiko.SSHClient()  # 创建SSHClient实例
    ssh_cli.load_system_host_keys()  # 加载系统默认ssh_keys
    
    ssh_cli.connect(hostname='******', username='test', password='123456')  # 建立ssh连接
    
    stdin, stdout, stderr = ssh_cli.exec_command('free -h')  # 在远程服务器上执行命令
    print(stdout.read().decode('utf-8'))  # 输出命令返回结果
    
    ssh_cli.close()  # 关闭连接
    

    使用SFTP上传下载文件

    import paramiko
    
    server = ('***.***.***.***', 22)  # 服务器地址及端口
    t = paramiko.Transport(server)  # 实例化连接对象
    t.connect(username='test',password='123456')  # 建立连接
    sftp = paramiko.SFTPClient.from_transport(t)  # 使用链接建立sftp对象
    
    print(sftp.listdir('/home/test'))  # 列出目录所有文件
    
    #  下载
    remote_file = '/home/test/a.txt'  # 服务器上的文件
    local_file = 'a.txt'  # 要保存的本地文件
    sftp.get(remote_file, local_file)  # 下载文件
    
    # 上传
    sftp.mkdir('/home/test/dat')  # 创建目录
    local_file = 'b.txt'  # 本地文件
    remote_file = '/home/test/dat/b.txt'  # 要保存到服务器上的文件
    sftp.put(local_file, remote_file)  # 上传
    
    t.close()  # 关闭连接
    
  • 相关阅读:
    各种平衡树板子
    字符串板子
    数学公式/定理/板子整理
    线性筛 板子整理
    set乱搞时需注意的坑点
    可持久化数据结构板子整理(可持久化 线段树/字典树/可并堆)
    洛谷p2483 模板k短路 可持久化可并堆
    p4929 DLX舞蹈链
    百度ai 图像增强与特效
    百度ai php请求获取access_token返回false
  • 原文地址:https://www.cnblogs.com/superhin/p/13887293.html
Copyright © 2011-2022 走看看