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()

 


					


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM