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

相关文章
|
1天前
|
Python
【Python进阶(五)】——模块搜索及工作目录
【Python进阶(五)】——模块搜索及工作目录
|
2天前
|
Shell Python
Python Stock guess_indicators_daily_job.py文件的调整
Python Stock guess_indicators_daily_job.py文件的调整
12 1
|
2天前
|
XML 前端开发 数据格式
BeautifulSoup 是一个 Python 库,用于从 HTML 和 XML 文件中提取数据
BeautifulSoup 是 Python 的一个库,用于解析 HTML 和 XML 文件,即使在格式不规范的情况下也能有效工作。通过创建 BeautifulSoup 对象并使用方法如 find_all 和 get,可以方便地提取和查找文档中的信息。以下是一段示例代码,展示如何安装库、解析 HTML 数据以及打印段落、链接和特定类名的元素。BeautifulSoup 还支持更复杂的查询和文档修改功能。
9 1
|
2天前
|
Python Windows
python中的异常与模块
python中的异常与模块
9 1
|
3天前
|
小程序 程序员 开发者
Python学习心得——小白的成长之路
Python学习心得——小白的成长之路
11 0
|
4天前
|
数据采集 NoSQL 中间件
python-scrapy框架(四)settings.py文件的用法详解实例
python-scrapy框架(四)settings.py文件的用法详解实例
9 0
|
4天前
|
存储 数据采集 数据库
python-scrapy框架(三)Pipeline文件的用法讲解
python-scrapy框架(三)Pipeline文件的用法讲解
7 0
|
4天前
|
网络安全 Python
网安之python基础学习练习(2-3)
本篇博文是关于网络安全课程中Python编程的学习实践总结。分享关于两个练习题目及其解决方案。第一个题目要求用户输入姓名并选择一项武技,使用for循环和if判断实现。第二个题目是删除列表中特定值(如'cat')的所有元素,作者展示了两种方法,包括列表推导式和常规循环删除。接下来,文章还介绍了如何编写一个函数,随机生成一副扑克牌(除大小王),并返回一张随机抽取的牌。
|
3天前
|
JSON 数据格式 开发者
pip和requests在Python编程中各自扮演着不同的角色
`pip`是Python的包管理器,用于安装、升级和管理PyPI上的包;`requests`是一个HTTP库,简化了HTTP通信,支持各种HTTP请求类型及数据交互。两者在Python环境中分别负责包管理和网络请求。
16 5
|
6天前
|
存储 Python 容器
Python高级编程
Python集合包括可变的set和不可变的frozenset,用于存储无序、不重复的哈希元素。创建集合可使用{}或set(),如`my_set = {1, 2, 3, 4, 5}`。通过add()添加元素,remove()或discard()删除元素,如`my_set.remove(3)`。