paramiko上传文件到Linux

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了paramiko上传文件到Linux相关的知识,希望对你有一定的参考价值。

一、传输单个文件到Linux服务器

import paramiko
transport = paramiko.Transport((‘host‘,22))
transport.connect(username=‘root‘,password=‘123‘)
sftp = paramiko.SFTPClient.from_transport(transport)
sftp.put(‘D:\Pycharm\hadoop_spark\ssh_files\id_rsa‘,‘/usr/local/id_rsa‘)
transport.close()

#D:\Pycharm\hadoop_spark\ssh_files\id_rsa      本地路径,(windows)
#/usr/local/id_rsa                             远端服务器路径,(Linux)
#两边路径必须都写上文件名

二、传输整个目录到Linux服务器

paramiko默认不支持传输目录,我们需要借助os.walk,在Unix,Windows中有效。

os.walk() 方法用于通过在目录树种游走输出在目录中的文件名,向上或者向下。

实例:

import os
import paramiko

transport = paramiko.Transport((‘host‘,22))
transport.connect(username=‘root‘,password=‘123‘)
sftp = paramiko.SFTPClient.from_transport(transport)
for path in dir_list:
    for root, dirs, files in os.walk(‘D:/Pycharm/hadoop_spark/hadoop_config/‘):
   for i in files:
              sftp.put(‘D:/Pycharm/hadoop_spark/hadoop_config/‘ + i,‘/usr/local/‘ + i)
transport.close()

 

以上是关于paramiko上传文件到Linux的主要内容,如果未能解决你的问题,请参考以下文章

python paramiko利用sftb上传文件到远程

python 使用paramiko模块上传本地文件到ssh

用python脚本把windows的文件上传到linux中

paramiko的简单使用(ssh远程执行脚本和上传文件)

Python远程登录Linux操作系统,执行命令创建目录上传及下载文件

python实现上传文件到linux指定目录