You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在不删除CloudFormation栈的前提下删除所有关联变更集?

批量删除CloudFormation栈关联的所有变更集

控制台无法直接批量删除变更集,只能通过AWS CLI编写脚本实现批量操作,以下是具体方法:

Bash 脚本(Linux/macOS)

替换<你的栈名称>为目标栈名,执行以下脚本即可批量删除所有未完成删除的变更集:

STACK_NAME="<你的栈名称>"
# 获取所有待删除的变更集ID(排除已删除完成的)
CHANGE_SETS=$(aws cloudformation list-change-sets --stack-name $STACK_NAME --query "Summaries[?Status!='DELETE_COMPLETE'].ChangeSetId" --output text)

# 循环删除每个变更集
for CHANGE_SET in $CHANGE_SETS; do
    echo "删除变更集: $CHANGE_SET"
    aws cloudformation delete-change-set --change-set-name $CHANGE_SET
done

PowerShell 脚本(Windows)

同样替换栈名后执行:

$stackName = "<你的栈名称>"
$changeSets = aws cloudformation list-change-sets --stack-name $stackName --query "Summaries[?Status!='DELETE_COMPLETE'].ChangeSetId" --output text
# 拆分结果并逐个删除
$changeSets -split "`t" | ForEach-Object {
    Write-Host "删除变更集: $_"
    aws cloudformation delete-change-set --change-set-name $_
}

注意事项

  • 确保AWS CLI已配置正确权限(需要cloudformation:ListChangeSets和cloudformation:DeleteChangeSet权限)
  • 执行前可单独运行aws cloudformation list-change-sets --stack-name <你的栈名称>命令,确认要删除的变更集列表,避免误操作
  • 变更集删除为异步操作,状态会从DELETE_IN_PROGRESS变为DELETE_COMPLETE,不会对栈本身造成影响

内容的提问来源于stack exchange,提问作者Aren Sade

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 04:19:56