博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python下paramiko模块学习之五:批量主机上传文件
阅读量:6220 次
发布时间:2019-06-21

本文共 1311 字,大约阅读时间需要 4 分钟。

    今天我继续为大家介绍如何利用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.

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

转载地址:http://paeja.baihongyu.com/

你可能感兴趣的文章
asp 短信接口 解决产生的乱码问题
查看>>
AngularJS开发指南9:AngularJS作用域的详解
查看>>
Ajax:动态更新Web页面
查看>>
Iphone开发(四)文本框,文本视图,和软键盘的隐藏
查看>>
数据库结构设计注意
查看>>
iOS: Core Data入门
查看>>
swf相关开源的工具
查看>>
百度地图3.1.0(一)Hello BaiduMap
查看>>
Java设计模式--责任链模式
查看>>
Zenefits CodeSprint:Knight or Knave
查看>>
网络通信协议、UDP与TCP协议、UDP通信、TCP通信
查看>>
Ogg - 从oracle到mysql的同步
查看>>
js中判断对象类型的几种方法
查看>>
grep多条件和sed合并两行
查看>>
iOS 之 时间格式与字符串转换
查看>>
js导出CSV
查看>>
转:Linux中find命令-path -prune用法详解
查看>>
团队编程项目作业3-模块测试过程
查看>>
Java基本数据类型及其封装器的一些千丝万缕的纠葛
查看>>
easyui datagrid 分页 客户分页
查看>>