Amazon S3 boto - how to delete folder?

后端 未结 6 818
我寻月下人不归
我寻月下人不归 2020-11-30 23:40

I created a folder in s3 named \"test\" and I pushed \"test_1.jpg\", \"test_2.jpg\" into \"test\".

How can I use boto to delete folder \"test\"?

6条回答
  •  爱一瞬间的悲伤
    2020-11-30 23:44

    You can use bucket.delete_keys() with a list of keys (with a large number of keys I found this to be an order of magnitude faster than using key.delete).

    Something like this:

    delete_key_list = []
    for key in bucket.list(prefix='/your/directory/'):
        delete_key_list.append(key)
        if len(delete_key_list) > 100:
            bucket.delete_keys(delete_key_list)
            delete_key_list = []
    
    if len(delete_key_list) > 0:
        bucket.delete_keys(delete_key_list)
    

提交回复
热议问题