在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 个回答
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()