python下paramiko模块学习之三:上传批量文件到远程主机

简介:

 今天我继续给大家介绍paramiko这个模块的其他功能,主要介绍利用paramiko来上传文件到远程主机,呵呵,其实就是paramiko模块中put方法的介绍,下面不废话,直接上代码,大家感兴趣,可以看下:

 

 
  1. [root@centos6 python]# clear 
  2. [root@centos6 python]# cat paramiko-upload.py 
  3. #!/usr/bin/env python 
  4. import paramiko 
  5. import os 
  6. import datetime 
  7. hostname='74.63.229.*' 
  8. username='root' 
  9. password='abc123' 
  10. port=22 
  11. local_dir='/tmp/' 
  12. remote_dir='/tmp/test/' 
  13. if __name__=="__main__"
  14.  #    try: 
  15.         t=paramiko.Transport((hostname,port)) 
  16.         t.connect(username=username,password=password) 
  17.         sftp=paramiko.SFTPClient.from_transport(t) 
  18. #        files=sftp.listdir(dir_path) 
  19.         files=os.listdir(local_dir) 
  20.         for f in files: 
  21.                 print '' 
  22.                 print '#########################################' 
  23.                 print 'Beginning to upload file %s ' % datetime.datetime.now() 
  24.                 print 'Uploading file:',os.path.join(local_dir,f) 
  25.  
  26.                # sftp.get(os.path.join(dir_path,f),os.path.join(local_path,f)) 
  27.                 sftp.put(os.path.join(local_dir,f),os.path.join(remote_dir,f)) 
  28.  
  29.                 print 'Upload file success %s ' % datetime.datetime.now() 
  30.                 print '' 
  31.                 print '##########################################' 
  32.  
  33.      #except Exception: 
  34. #       print "error!" 
  35.         t.close() 
  36.  
  37. [root@centos6 python]# 

下面给大家演示下效果:

 

 
  1. [root@centos6 python]# python paramiko-upload.py 
  2.  
  3. ######################################### 
  4. Beginning to upload file 2011-10-15 15:02:51.453422 
  5. Uploading file: /tmp/ipt.out 
  6. Upload file success 2011-10-15 15:02:53.051348 
  7.  
  8. ########################################## 
  9.  
  10. ######################################### 
  11. Beginning to upload file 2011-10-15 15:02:53.051500 
  12. Uploading file: /tmp/ipt.err 
  13. Upload file success 2011-10-15 15:02:54.304115 
  14.  
  15. ########################################## 
  16. [root@centos6 python]# 

   呵呵,效果还是不错的吧,不过在本地文件夹中,机local_dir下面包含文件夹的会报错,大家如果在工作中项使用的话,需要注意这点,希望本文能给你的学习和工作带来帮助,相信大家在平时的运维工作中还是需要这个功能的,呵呵。。。。

     

     注意:本文同步在我的个人独立博客www.50rescue.compython的百科残书上同步发布。。。

本文转自你是路人甲还是霍元甲博客51CTO博客,原文链接http://blog.51cto.com/world77/707008如需转载请自行联系原作者


world77

相关文章
|
5月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
356 2
|
5月前
|
存储 Java 数据处理
(numpy)Python做数据处理必备框架!(一):认识numpy;从概念层面开始学习ndarray数组:形状、数组转置、数值范围、矩阵...
Numpy是什么? numpy是Python中科学计算的基础包。 它是一个Python库,提供多维数组对象、各种派生对象(例如掩码数组和矩阵)以及用于对数组进行快速操作的各种方法,包括数学、逻辑、形状操作、排序、选择、I/0 、离散傅里叶变换、基本线性代数、基本统计运算、随机模拟等等。 Numpy能做什么? numpy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。 用于读写磁盘数据的工具以及用于操作内存映射文件的工具。 线性代数、随机数生成以及傅里叶变换功能。 用于集成由C、C++
498 0
|
5月前
|
算法 Java Docker
(Python基础)新时代语言!一起学习Python吧!(三):IF条件判断和match匹配;Python中的循环:for...in、while循环;循环操作关键字;Python函数使用方法
IF 条件判断 使用if语句,对条件进行判断 true则执行代码块缩进语句 false则不执行代码块缩进语句,如果有else 或 elif 则进入相应的规则中执行
814 1
|
5月前
|
监控 机器人 编译器
如何将python代码打包成exe文件---PyInstaller打包之神
PyInstaller可将Python程序打包为独立可执行文件,无需用户安装Python环境。它自动分析代码依赖,整合解释器、库及资源,支持一键生成exe,方便分发。使用pip安装后,通过简单命令即可完成打包,适合各类项目部署。
1026 68
|
5月前
|
存储 Java 索引
(Python基础)新时代语言!一起学习Python吧!(二):字符编码由来;Python字符串、字符串格式化;list集合和tuple元组区别
字符编码 我们要清楚,计算机最开始的表达都是由二进制而来 我们要想通过二进制来表示我们熟知的字符看看以下的变化 例如: 1 的二进制编码为 0000 0001 我们通过A这个字符,让其在计算机内部存储(现如今,A 字符在地址通常表示为65) 现在拿A举例: 在计算机内部 A字符,它本身表示为 65这个数,在计算机底层会转为二进制码 也意味着A字符在底层表示为 1000001 通过这样的字符表示进行转换,逐步发展为拥有127个字符的编码存储到计算机中,这个编码表也被称为ASCII编码。 但随时代变迁,ASCII编码逐渐暴露短板,全球有上百种语言,光是ASCII编码并不能够满足需求
253 4
|
6月前
|
JavaScript Java 大数据
基于python的网络课程在线学习交流系统
本研究聚焦网络课程在线学习交流系统,从社会、技术、教育三方面探讨其发展背景与意义。系统借助Java、Spring Boot、MySQL、Vue等技术实现,融合云计算、大数据与人工智能,推动教育公平与教学模式创新,具有重要理论价值与实践意义。
|
存储 数据采集 数据处理
如何在Python中高效地读写大型文件?
大家好,我是V哥。上一篇介绍了Python文件读写操作,今天聊聊如何高效处理大型文件。主要方法包括:逐行读取、分块读取、内存映射(mmap)、pandas分块处理CSV、numpy处理二进制文件、itertools迭代处理及linecache逐行读取。这些方法能有效节省内存,提升效率。关注威哥爱编程,学习更多Python技巧。
389 8
|
Python
python读写execle文件数据
python读写execle文件数据
172 0
|
SQL JSON 关系型数据库
n种方式教你用python读写excel等数据文件
n种方式教你用python读写excel等数据文件
276 1

推荐镜像

更多