如何重命名Google Storage存储桶中的对象?

时间:2017-08-26 14:59:17

标签: google-api google-cloud-storage

如何通过API重命名Google Storage存储桶中的对象?

另见An error attempting to rename a Google Bucket object (Google bug?)

3 个答案:

答案 0 :(得分:2)

首先,使用"重写"生成原始对象副本的方法。然后,删除原始对象。

有关重写的文档:https://cloud.google.com/storage/docs/json_api/v1/objects/rewrite

答案 1 :(得分:2)

无法重命名对象。您可以做的最好的事情是复制到新对象并删除原始对象。如果新旧对象是相同的位置(例如,如果它们位于同一个存储桶中则为真),它将是仅元数据(无字节复制)操作,因此速度很快。但是,由于它是两个操作,因此它不是原子的。

答案 2 :(得分:0)

不确定是要编程还是手动进行操作,但是gsutil工具具有mv选项,可用于重命名对象。

gsutil mv gs://my_bucket/oldprefix gs://my_bucket/newprefix

正如其他张贴者所指出的,此操作在幕后进行复制和删除。