我有点深入了解。我想在S3上存储备份,然后在下载S3存储桶的特定“文件夹”中最新修改的文件时尝试下载脚本。
我到目前为止:
import boto
s3conn = boto.connect_s3()
bucket = s3conn.lookup('my_bucket_name')
for key in bucket:
print k.name, k.last_modified
key.getfile()
到目前为止,这是为了获取存储桶中每个文件的名称和最后修改。这是我真的陷入困境的地方,因为我需要获得最新版本,然后下载它,这就是我被卡住的地方。
有人能提供帮助吗?
答案 0 :(得分:1)
您需要按last_modifed对键列表进行排序,然后列表的最后一项将是您想要的文件。像这样:
key_list = bucket.list()
key_list.sort(cmp = lambda x, y:
cmp(x.last_modified, y.last_modified))
key_list[-1].get_file(destination_fp)
这是另一种排序方法,您可以尝试:
key_list.sort(key=lambda x: x.last_modified)