【问题标题】:Delete a Google Storage folder including all versions of objects inside删除包含所有对象版本的 Google Storage 文件夹
【发布时间】:2018-11-02 16:11:25
【问题描述】:

您好,提前致谢。我想从 Google Cloud Storage 中删除一个文件夹,包括里面所有对象的所有版本。当您在笔记本电脑上使用 gsutil 时,这很容易(您可以只使用文件夹名称作为前缀并放置标志来删除每个对象的所有版本/世代)

..但我希望它在 脚本定期触发(例如,当我在假期时)。我目前的想法是 Apps Script 和 Google Cloud Functions(或 firebase 函数)。问题是在这些情况下,我没有像 gsutil 这样强大的接口,我必须使用 REST API,所以我不能说“删除带有这个前缀的所有内容”,也不能说“这个对象的所有版本”。因此,我能做的最好的就是
a) 列出所有给定前缀的对象。因此,对于前缀“myFolder”,我收到:
myFolder/obj1 - 第 10 代
myFolder/obj1 - 第 15 代
myFolder/obj2 - 第 12 代

... 等等数百个文件和每个文件至少 1 代/版本。

b) 对于每个文件代删除它给出完整的对象名称加上它的代。

如您所见,这似乎需要做很多工作。你知道更好的选择吗?

【问题讨论】:

    标签: directory google-cloud-storage version


    【解决方案1】:

    列出你要删除的对象并删除它们是实现你想要的唯一方法。

    唯一的选择是使用Lifecycle,如果条件满足您的要求,它可以根据条件自动为您删除对象。

    【讨论】:

    • 非常感谢。 Still Lifecycle 不允许您按前缀进行配置。换句话说,我不能说:将所有内容永久保存在此存储桶中,除了前缀为 MyFolder 的对象,您在 3 个月后删除所有版本。对了 jterrace 吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-26
    • 1970-01-01
    • 1970-01-01
    • 2016-06-09
    • 1970-01-01
    • 2021-06-30
    • 2020-11-12
    相关资源
    最近更新 更多