在S3上使用boto库

时间:2011-09-10 01:14:01

标签: python amazon-s3 boto

有没有办法更改S3文件的密钥?例如,我希望能够做到相同的:

>>> from boto.s3.key import Key
>>> k=Key(bucket)
>>> k.key='cli-images/image-thumb.jpg' # this is the original key
>>> k.key='cli-images/moved/image-thumb.jpg' # this is the key I want to change it to
>>> k.save()

在查看boto文档时,我只能找到将密钥复制到另一个存储桶的方法,但在这种情况下,我需要将文件保留在同一个存储桶中,只需移动位置(即更改密钥)。谢谢。

1 个答案:

答案 0 :(得分:11)

只需将对象复制到同一个存储桶并删除原始对象:

from boto.s3.key import Key
k=Key(bucket)
k.key='cli-images/image-thumb.jpg'
k.copy('bucketname', 'cli-images/moved/image-thumb.jpg')
k.delete()