gpt4 book ai didi

amazon-web-services - aws ec2 描述实例 : how to filter *out* spot instances?

转载 作者:行者123 更新时间:2023-12-03 14:49:56 24 4
gpt4 key购买 nike

我可以通过发出以下 CLI 命令列出我的所有 Spot 实例:

aws ec2 describe-instances --filter Name="instance-lifecycle",Values="spot"

但是我怎样才能显示我所有的 not Spot 实例呢?这些都不起作用:
aws ec2 describe-instances --filter Name="instance-lifecycle",Values=""
aws ec2 describe-instances --filter Name="instance-lifecycle",Values="?"

(对于非 Spot 实例, instance-lifecycle 为空/空,类似 spot-instance-request-id )

最佳答案

看来你可以通过 --query 做到这一点。选项。

我一直在努力寻找有关该选项本身的良好文档,但我设法发现您可以在其中传递过滤器的事实。

例如,这 2 个命令将返回相同的内容:

aws ec2 describe-instances --filters "[{\"Name\": \"tag:role\", \"Values\": [\"web\"]}, {\"Name\":\"instance-state-name\", \"Values\": [\"running\"]}]" --query='Reservations[*].Instances[*].[LaunchTime,PrivateIpAddress][]'

aws ec2 describe-instances --filters "[{\"Name\": \"tag:role\", \"Values\": [\"web\"]}]" --query='Reservations[*].Instances[?InstanceStateName=="running"].[LaunchTime,PrivateIpAddress][]'

这也允许我们做的是过滤实例输出中没有指定标签的项目(例如,“正常”实例没有“InstanceLifecycle”属性,因此返回 null ):
aws ec2 describe-instances --filters "[{\"Name\": \"tag:role\", \"Values\": [\"web\"]}, {\"Name\":\"instance-state-name\", \"Values\": [\"running\"]}]" --query='Reservations[*].Instances[?!InstanceLifecycle].[LaunchTime,PrivateIpAddress][]'

备注 Instances[?!InstanceLifecycle]在查询中。

关于amazon-web-services - aws ec2 描述实例 : how to filter *out* spot instances?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46202643/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com