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.com, python的百科残书上同步发布。。。

你可能感兴趣的:(python,休闲,paramiko,批量上传文件,远程主机)