帮助我,请,我想停止所有实例,除一个实例外,其中一个具有Instance ID i-0a5fe830efd1f5df3
。有这样的脚本,但它停止了所有实例:
$ aws ec2 terminate-instance -instance-ids $ (aws ec2 describe-instances
--filters "Name = instance-state-name, Values = pending, running, stop, stopping"
--query "Reservations []. Instances []. [InstanceId]" --outout text | tr ' n' '')
我该怎么做?
据我所知,没有单 CLI命令可以执行此操作,因为大多数AWS命令都包含在内,而不是独有的。
我将以四个步骤执行此操作:
- 首先,使用
describe-instances
获取所有实例的列表。 - 通过返回的实例进行迭代,将每个实例的ID连接到新的变量
instance-ids
上。当您echo
变量时,最终结果看起来像"instance-id-0" "instance-id-1"
。 - 删除要从
instance-ids
变量保留的实例的ID - 运行
terminate-instances
在修剪的instance-ids
变量中作为--instance-ids
参数。