2

我的深度有点过了。我想将备份存储在 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()

到目前为止,这旨在获取存储桶中每个文件的名称和最后修改时间。这是我真正卡住的地方,因为我需要获取最新的然后下载它,这就是我卡住的地方。

有人能伸出援助之手吗?

4

1 回答 1

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)
于 2012-12-08T00:08:06.857 回答