python下paramiko模块学习之五:批量主机上传文件

简介:

    今天我继续为大家介绍如何利用paramiko模块给批量主机上传文件,其实之前都介绍过了,无非就是把一些零碎的东西拼在一起,呵呵,就是利用python读取配置文件里面的批量主机的IP地址,然后分别给他们上传文件,下面不废话了,直接上代码了:

 

 
  1. [root@centos6 python]# vi paramiko-sftp-mulit-upload.py 
  2.  
  3. #!/usr/bin/env python 
  4. import paramiko 
  5. import os 
  6. import datetime 
  7. from ConfigParser import ConfigParser 
  8. ConfigFile='config.ini' 
  9. config=ConfigParser() 
  10. config.read(ConfigFile) 
  11. hostname1=''.join(config.get('IP','ipaddress')) 
  12. address=hostname1.split(';'
  13. print address 
  14. username='root' 
  15. password='itpschina123' 
  16. port=22 
  17. local_dir='/tmp/' 
  18. remote_dir='/tmp/test/' 
  19. if __name__=="__main__"
  20.  #    try: 
  21.         for ip in address: 
  22.                  t=paramiko.Transport((ip,port)) 
  23.                  t.connect(username=username,password=password) 
  24.                  sftp=paramiko.SFTPClient.from_transport(t) 
  25. #                files=sftp.listdir(dir_path) 
  26.                  files=os.listdir(local_dir) 
  27.                  print files 
  28.                  for f in files: 
  29.                         print '####################################################' 
  30.                         print 'Begin to upload file  to %s ' % ip 
  31.                         print 'Uploading ',os.path.join(local_dir,f) 
  32.  
  33.                         print datetime.datetime.now() 
  34.                         sftp.put(os.path.join(local_dir,f),os.path.join(remote_dir,f)) 
  35.                         print datetime.datetime.now() 
  36.                         print '####################################################' 
  37.                  t.close() 

下面是config.ini的配置文件内容:

 
  1. [IP] 
  2. #ipaddress = 192.168.0.102;192.168.0.103 
  3. ipaddress = 74.63.229.*;69.50.220.

   呵呵,感兴趣的话,去试验下吧,代码都贴出来了,如果前面几期运行都很很顺利的话,这次也没有问题的,毕竟我都是在我的虚拟机上验证过的,如果有问题,请留言。。。

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


world77

相关文章
|
6天前
|
Python
python函数的参数学习
学习Python函数参数涉及五个方面:1) 位置参数按顺序传递,如`func(1, 2, 3)`;2) 关键字参数通过名称传值,如`func(a=1, b=2, c=3)`;3) 默认参数设定默认值,如`func(a, b, c=0)`;4) 可变参数用*和**接收任意数量的位置和关键字参数,如`func(1, 2, 3, a=4, b=5, c=6)`;5) 参数组合结合不同类型的参数,如`func(1, 2, 3, a=4, b=5, c=6)`。
11 1
|
2天前
|
Python
python学习3-选择结构、bool值、pass语句
python学习3-选择结构、bool值、pass语句
|
2天前
|
Python
python学习14-模块与包
python学习14-模块与包
|
2天前
|
Python
python学习12-类对象和实例对象
python学习12-类对象和实例对象
|
2天前
|
数据采集 Python
python学习9-字符串
python学习9-字符串
|
2天前
|
Python
python学习10-函数
python学习10-函数
|
2天前
|
存储 索引 Python
python学习7-元组
python学习7-元组
|
2天前
|
Python
python学习8-集合
python学习8-集合
|
2天前
|
Python
python学习4-内置函数range()、循环结构、循环控制语句、else语句、嵌套循环
python学习4-内置函数range()、循环结构、循环控制语句、else语句、嵌套循环
|
2天前
|
存储 索引 Python
python学习5-列表的创建、增删改查、排序
python学习5-列表的创建、增删改查、排序

热门文章

最新文章