阿里云OSS对象存储内容增量备份到本地

2023-01-31 02:01:34 备份 增量 阿里
#!/usr/bin/python3
#-*-coding:utf-8-*-
#key :OSS文件名称
#bucket :存储空间名称
import oss2
import oss
import datetime

#oss时间
oss_time = datetime.datetime.now()
count  = 0
auth = oss2.Auth('阿里id', '密码')
bucket = oss2.Bucket(auth, 'Http://oss-cn-shenzhen.aliyuncs.com', 'bucket名称')

#切换目录
os.chdir('/home/域名/')
#操作完文件自动关闭
with open('file.txt','r+') as f:
        #读取一整行文件包括回车换行
        old = f.readline()
        # 设置Delimiter参数为正斜线(/)。
        for obj in oss2.ObjectIterator(bucket, delimiter = '/'):
                #  如果如果oss名称不等于文件名则下载OSS文件到本地文件。如果指定的本地文件存在会覆盖,不存在则新建。
                if obj.key not in old:
                                                # 向文件中写入oss文件内容
                        bucket.get_object_to_file(obj.key, obj.key) and f.write(obj.key)  
                                                count+=1
print ('update_file: ',count,'                      ',oss_time)
                        # 

创建crontab -e
/10 * /usr/bin/python3 /home/ooscopy.py >> /home/123/ossbak.log 2>&1

相关文章