将文件从存储桶移动到另一个存储桶/文件夹

时间:2015-11-09 19:22:54

标签: python amazon-s3 boto aws-sdk

我想将文件从存储桶移动到同一个存储桶/文件夹。

test文件夹已存在。

srcBucket = "tmp"
dstBucket = "tmp"
import boto
c = boto.connect_s3()
src = c.get_bucket(srcBucket)
dst = c.get_bucket(dstBucket)
print dst
for k in src.list():
# copy stuff to your destination here
    dst.copy_key(k.key, src.name, "/test/"+k.key)

我得到了:

<Message>The specified key does not
exist.</Message><Key>/test/00hbgelokd2i5nglv6opbte003gorrnahv65uo81</Key>

1 个答案:

答案 0 :(得分:1)

S3中的对象键不以/开头。

http://example-bucket.s3.amazonaws.com/foo/bar.txt处对象的关键字是foo/bar.txt,而不是/foo/bar.txt

因此,在您的示例中,"/test/"+k.key应为"test/"+k.key