2015-02-24 43 views
1

根據文檔,只能通過提供版本號永久刪除對象。遞歸刪除Amazon S3中的版本化對象

我看了一下Python的Boto,它對於小對象來說似乎很簡單。但是如果我有一個包含100 000個對象的文件夾,它將不得不逐一刪除它們,這需要一些時間。

有沒有更好的方法來解決這個問題?

+0

使用AWS-CLI,這應該工作:'aws s3 rm s3:// bucket/folder1/folder2/--recursive'。這將刪除'folder2'和下面的所有內容。 – slayedbylucifer 2015-02-24 12:15:52

+0

這會永久刪除所有版本並且不會在對象的位置留下刪除標記嗎? – 2015-02-24 12:17:40

+0

不,上面的命令會將標記留在後面。要刪除版本化對象,必須在刪除命令中指定版本號。您可能需要編寫一個快速入門手冊,以獲取對象ID以及版本,然後在循環中運行刪除命令。 – slayedbylucifer 2015-02-24 12:35:23

回答

0

刪除Amazon S3存儲桶中版本化對象的簡單方法是創建生命週期規則。該規則以批處理爲基礎(Midnight UTC?)激活,並且可以刪除指定路徑中的對象,並知道如何處理版本化對象。

參見:

這種缺失不計入API調用使用計數,所以可以更便宜呢!

+0

謝謝約翰,我已經閱讀過關於這方面的內容,但我們需要特別針對我們存儲桶中的特定對象,因此生命週期規則不適用於此。 – 2015-03-03 07:15:45