Ada*_* W. 2 powershell amazon-ec2 amazon-web-services
我在AWS中使用了许多"一次性"服务器,我们正在努力降低这些服务器的成本.
最初,我们正在寻找一个相当基本的'awsec2 stop all'命令,从我们知道将全天候运行的服务器按计划运行.
在检查AWS记录的内容后,我们似乎需要引入所有当前运行的实例,获取这些实例的ID,然后将它们传递到命令中,而不是简单地声明我希望所有实例都关闭.
是否有更好的方法来收集这些ID,例如只是能够发出"全部停止"?
感谢帮助.
小智 6
AWS CLI使用--query选项提供内置JSON解析.此外,您可以使用--filter选项仅对正在运行的实例执行stop命令.
aws ec2 describe-instances \
--filter Name=instance-state-name,Values=running \
--query 'Reservations[].Instances[].InstanceId' \
--output text | xargs aws ec2 stop-instances --instance-ids
Run Code Online (Sandbox Code Playgroud)