阿里云OSS对象存储内容增量备份到本地
#!/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
相关文章