1

以下代码按预期工作并显示存储桶名称、文件名。例如

<Key: vivafree,Master.csv.2012-04-10-17-52-39.gz>
<Key: vivafree,Master.csv.2012-07-12-23-00-49.gz>

我需要下载所有这些文件并将它们传输到 Glacier 保险库。

from boto.s3.key import Key
from boto.s3.connection import S3Connection

AWS_ACCESS_KEY_ID="ABC"
AWS_SECRET_ACCESS_KEY="PQR+XYZ"

conn = S3Connection(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)

bucket = conn.get_bucket('vivafree')

ls=bucket.get_all_keys()

for file in ls:
 print file

以下代码将复制一个文件并将其放入名为“company_backup”的保管库中。

import boto.glacier.layer2

vaultName = "company_backup"
fileName = "email_usergroups_permissions.txt.gz"
l = boto.glacier.layer2.Layer2(aws_access_key_id=AWS_ACCESS_KEY_ID, aws_secret_access_key=AWS_SECRET_ACCESS_KEY)
v = l.get_vault(vaultName) 

archiveID = v.create_archive_from_file(fileName)

我需要做的是遍历从第一个代码块返回的文件。下载然后使用第二个代码段将它们传输到冰川。我还需要保存 archiveID 以供记录。

4

0 回答 0