首页 > 解决方案 > 如何使用 AWS CLI 清空 S3 存储桶

问题描述

我正在尝试使用 CLI 清空 S3 存储桶。

  1. 我尝试aws s3 rm --recursive了不会清空我的存储桶的命令,因为它已启用版本控制。

  2. 我尝试aws s3 rb --force命令强制删除存储桶,但效果不佳。它抛出这个错误BucketNotEmpty: The bucket you tried to delete is not empty. You must delete all versions in the bucket.

我真的需要使用 CLI 来完成这项工作。有没有办法做到这一点。请帮忙。最终目标是删除存储桶。提前致谢。

标签: amazon-web-servicesamazon-s3

解决方案


如果您只能使用 CLI,请尝试以下操作:

aws s3api delete-objects \
  --bucket ${bucket_name} \
  --delete "$(aws s3api list-object-versions \
  --bucket "${bucket_name}" \
  --output=json \
  --query='{Objects: Versions[].{Key:Key,VersionId:VersionId}}')"

推荐阅读