python下paramiko模块学习之四:从远程主机批量下载文件到本机

     前面我们已经学习了paramiko的上传功能,这里就要给大家介绍下他的下载功能,呵呵,不废话了,直接上代码,感兴趣的可以研究下:

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

    呵呵,代码和前面上传功能稍有区别,这里就不写注释了,我的变量名都是和直观的就能让你明白意思了,哈哈,下面看下演示功能吧,看下效果:

 

 
 
  1. [root@centos6 python]# clear 
  2. [root@centos6 python]# python paramiko-download.py 
  3.  
  4. ######################################### 
  5. Beginning to download file  from 74.63.229.*  2011-11-05 15:49:01.334686 
  6. Downloading file: /tmp/test/wgetrc 
  7. Download file success 2011-11-05 15:49:05.955184 
  8.  
  9. ########################################## 
  10.  
  11. ######################################### 
  12. Beginning to download file  from 74.63.229.*  2011-11-05 15:49:05.955342 
  13. Downloading file: /tmp/test/xinetd.conf 
  14. Download file success 2011-11-05 15:49:10.929568 
  15.  
  16. ########################################## 
  17.  
  18. ######################################### 
  19. Beginning to download file  from 74.63.229.*  2011-11-05 15:49:10.929740 
  20. Downloading file: /tmp/test/warnquota.conf 
  21. Download file success 2011-11-05 15:49:14.213570 
  22.  
  23. ########################################## 

   呵呵,效果还是不错的,至此,paramiko的上传下载都已经介绍完 了,呵呵,下面讲虾米内容呢,千万别走开,精彩内容继续为你放松,下一次,我将为你介绍和前面讲过的,读取配置文件,上传批量文件到多部服务器,敬请关注。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值