小智 58
如果您启用了版本控制,是的,您可以!在版本化存储桶上,对文件的删除操作不会真正删除它,但会添加带有“删除标记”的版本。您可以使用 AWS CLI 删除删除标记:
aws s3api delete-object --bucket yourbucket-name --key "yourfile" --version-id id_of_the_delete_marker
Run Code Online (Sandbox Code Playgroud)
您可以使用以下命令获取存储桶中的所有文件
aws --output text s3api list-object-versions --bucket yourbucket-name > files.txt
Run Code Online (Sandbox Code Playgroud)
如果您想取消删除存储桶中的所有文件,您可以尝试:
echo '#!/bin/bash' > undeleteScript.sh && aws --output text s3api list-object-versions --bucket yourbucket-name | grep -E "^DELETEMARKERS" | awk '{FS = "[\t]+"; print "aws s3api delete-object --bucket yourbucket-name --key \42"$3"\42 --version-id "$5";"}' >> undeleteScript.sh && . undeleteScript.sh; rm -f undeleteScript.sh;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
41837 次 |
| 最近记录: |