一次性删除多个 Auto Scaling 组:AWS CLI
Deleting multiple Auto scaling groups in one shot: AWS CLI
我有多个需要删除的自动缩放组。例如:我有 ASG awsLC1
xyzLC2
aLC3
。我发现他们使用 AWS CLI 和以下查询:
aws autoscaling describe-auto-scaling-groups --query "AutoScalingGroups[? contains(AutoScalingGroupName,'LC')].AutoScalingGroupName" --output text
它在控制台上给了我一个列表。但是 delete-auto-scaling-group
在参数中只需要 1 个 ASG(自动缩放组)名称。
我该怎么做?
有什么方法可以使用 bash 编程来自动执行此操作?
谢谢!
CLI 不支持删除多个 ASG。您可以尝试一个简单的 bash 脚本:
$ for group in `aws autoscaling describe-launch-configurations --query "LaunchConfigurations[?contains(LaunchConfigurationName,'LC')].[LaunchConfigurationName]" --output text`
> do
> echo $group
> done
验证群组后,将其删除:
$ for group in `aws autoscaling describe-launch-configurations --query "LaunchConfigurations[?contains(LaunchConfigurationName,'LC')].[LaunchConfigurationName]" --output text`
> do
> aws autoscaling delete-auto-scaling-group --auto-scaling-group-name $group
> done
编辑
根据@JordonPhillips 的输入,您可以使用 xargs
的 -I
选项来得到一个衬垫:
aws autoscaling describe-launch-configurations --query "LaunchConfigurations[?contains(LaunchConfigurationName,'LC')].[LaunchConfigurationName]" --output text | xargs -I aws autoscaling delete-auto-scaling-group --auto-scaling-group-name
我有多个需要删除的自动缩放组。例如:我有 ASG awsLC1
xyzLC2
aLC3
。我发现他们使用 AWS CLI 和以下查询:
aws autoscaling describe-auto-scaling-groups --query "AutoScalingGroups[? contains(AutoScalingGroupName,'LC')].AutoScalingGroupName" --output text
它在控制台上给了我一个列表。但是 delete-auto-scaling-group
在参数中只需要 1 个 ASG(自动缩放组)名称。
我该怎么做?
有什么方法可以使用 bash 编程来自动执行此操作?
谢谢!
CLI 不支持删除多个 ASG。您可以尝试一个简单的 bash 脚本:
$ for group in `aws autoscaling describe-launch-configurations --query "LaunchConfigurations[?contains(LaunchConfigurationName,'LC')].[LaunchConfigurationName]" --output text`
> do
> echo $group
> done
验证群组后,将其删除:
$ for group in `aws autoscaling describe-launch-configurations --query "LaunchConfigurations[?contains(LaunchConfigurationName,'LC')].[LaunchConfigurationName]" --output text`
> do
> aws autoscaling delete-auto-scaling-group --auto-scaling-group-name $group
> done
编辑
根据@JordonPhillips 的输入,您可以使用 xargs
的 -I
选项来得到一个衬垫:
aws autoscaling describe-launch-configurations --query "LaunchConfigurations[?contains(LaunchConfigurationName,'LC')].[LaunchConfigurationName]" --output text | xargs -I aws autoscaling delete-auto-scaling-group --auto-scaling-group-name