打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
mogilefs模块
模块下载
wget http://www.albany.edu/~ja6447/mogilefs.py
import md5
import mogilefs
//通过api连接mfs  域名、IP、端口
con=mogilefs.Client(domain='www.360doc.com',trackers=['192.168.1.1:7001'])
//下载pdf文件
file=open('/home/13638285445863.pdf','w')
//通过key来下载文件
con.get_file_data('/handout/2013/03/21/13638285445863.pdf',fp=file)
file.close()


利用遍历mfs的日志文件,将mfs存储的文件备份到远端服务器(日志文件内包括存储的文件名)
#!/usr/bin/python
#coding=utf8
import os
import re
import md5
import mogilefs
import time
import paramiko
//mfs的日志文件以日期命名
TIME=time.strftime('%Y-%m-%d',time.localtime(time.time()))       
T=str(TIME)

#使用paramiko模块远程拷贝mfs-log到本地
scp=paramiko.Transport(("server1",10088))    //主机名、端口 
scp.connect(username='user',password='pwd'     //用户名、密码
sftp = paramiko.SFTPClient.from_transport(scp)
remotepath='/home/logs/img_store.'+T+'.log'   //远端日志路径
localpath='/home/logs/img_store.'+T+'.log'    //本地保存路径
sftp.get(remotepath,localpath)
scp.close()
#遍历日志内容
logfile = open('/home/logs/img_store.'+T+'.log','r')
for line in open("/home/logs/img_store."+T+".log"):
        line = logfile.readline().split(' ')[4]
        dir=os.path.dirname(line)
        basename=os.path.basename(line)
        #判断路径是否存在
        if not os.path.exists('/home/data/mfs-file'+dir):   //文件备份目录
                os.makedirs('/home/data/mfs-file'+dir)
        #判断文件是否存在,若存在则覆盖
        if os.path.isfile('/home/data/mfs-file'+line):
                os.remove('/home/data/mfs-file'+line)
                //连接mfs并通过文件名下载文件
                con=mogilefs.Client(domain='mfs.xueersi.com',trackers=['192.168.1.X:7001'])                
                file=open('/home/data/mfs-file'+line,'w')
                a=con.get_file_data(line)
                file.write(a)
                file.close()
        #如果不存在,则下载
        else:
                con=mogilefs.Client(domain='file-mfs.xueersi.com',trackers=['192.168.1.X:7001'])
                file=open('/home/data/mfs-file'+line,'w')
                a=con.get_file_data(line)
                file.write(a)
                file.close()

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
「python小脚本」从数据库获取文件路径通过scp下载本地
cx_freeze打包含有paramiko模块的程序
python模块paramiko的上传下载和远程执行命令方法
Python爬虫与数据分析之模块:内置模块、开源模块、自定义模块
Python模块的交叉引用问题
成功解决Could not import the PyAudio C module ‘_portaudio‘.
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服