1
根據文檔,只能通過提供版本號永久刪除對象。遞歸刪除Amazon S3中的版本化對象
我看了一下Python的Boto,它對於小對象來說似乎很簡單。但是如果我有一個包含100 000個對象的文件夾,它將不得不逐一刪除它們,這需要一些時間。
有沒有更好的方法來解決這個問題?
根據文檔,只能通過提供版本號永久刪除對象。遞歸刪除Amazon S3中的版本化對象
我看了一下Python的Boto,它對於小對象來說似乎很簡單。但是如果我有一個包含100 000個對象的文件夾,它將不得不逐一刪除它們,這需要一些時間。
有沒有更好的方法來解決這個問題?
刪除Amazon S3存儲桶中版本化對象的簡單方法是創建生命週期規則。該規則以批處理爲基礎(Midnight UTC?)激活,並且可以刪除指定路徑中的對象,並知道如何處理版本化對象。
參見:
這種缺失不計入API調用使用計數,所以可以更便宜呢!
謝謝約翰,我已經閱讀過關於這方面的內容,但我們需要特別針對我們存儲桶中的特定對象,因此生命週期規則不適用於此。 – 2015-03-03 07:15:45
使用AWS-CLI,這應該工作:'aws s3 rm s3:// bucket/folder1/folder2/--recursive'。這將刪除'folder2'和下面的所有內容。 – slayedbylucifer 2015-02-24 12:15:52
這會永久刪除所有版本並且不會在對象的位置留下刪除標記嗎? – 2015-02-24 12:17:40
不,上面的命令會將標記留在後面。要刪除版本化對象,必須在刪除命令中指定版本號。您可能需要編寫一個快速入門手冊,以獲取對象ID以及版本,然後在循環中運行刪除命令。 – slayedbylucifer 2015-02-24 12:35:23