您的位置:首页 > 编程语言 > Python开发

python下paramiko模块学习之三:上传批量文件到远程主机

2011-11-05 20:28 836 查看
今天我继续给大家介绍paramiko这个模块的其他功能,主要介绍利用paramiko来上传文件到远程主机,呵呵,其实就是paramiko模块中put方法的介绍,下面不废话,直接上代码,大家感兴趣,可以看下:

[root@centos6 python]# clear
[root@centos6 python]# cat paramiko-upload.py
#!/usr/bin/env python
import paramiko
import os
import datetime
hostname='74.63.229.*'
username='root'
password='abc123'
port=22
local_dir='/tmp/'
remote_dir='/tmp/test/'
if __name__=="__main__":
#    try:
t=paramiko.Transport((hostname,port))
t.connect(username=username,password=password)
sftp=paramiko.SFTPClient.from_transport(t)
#        files=sftp.listdir(dir_path)
files=os.listdir(local_dir)
for f in files:
print ''
print '#########################################'
print 'Beginning to upload file %s ' % datetime.datetime.now()
print 'Uploading file:',os.path.join(local_dir,f)

# sftp.get(os.path.join(dir_path,f),os.path.join(local_path,f))
sftp.put(os.path.join(local_dir,f),os.path.join(remote_dir,f))

print 'Upload file success %s ' % datetime.datetime.now()
print ''
print '##########################################'

#except Exception:
#       print "error!"
t.close()

[root@centos6 python]#

下面给大家演示下效果:

[root@centos6 python]# python paramiko-upload.py

#########################################
Beginning to upload file 2011-10-15 15:02:51.453422
Uploading file: /tmp/ipt.out
Upload file success 2011-10-15 15:02:53.051348

##########################################

#########################################
Beginning to upload file 2011-10-15 15:02:53.051500
Uploading file: /tmp/ipt.err
Upload file success 2011-10-15 15:02:54.304115

##########################################
[root@centos6 python]#

呵呵,效果还是不错的吧,不过在本地文件夹中,机local_dir下面包含文件夹的会报错,大家如果在工作中项使用的话,需要注意这点,希望本文能给你的学习和工作带来帮助,相信大家在平时的运维工作中还是需要这个功能的,呵呵。。。。

注意:本文同步在我的个人独立博客www.50rescue.com, python的百科残书上同步发布。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐