2017-09-13 46 views
2

我可以列出通过发出以下CLI命令我所有的现货情况:aws ec2 describe-instances:如何过滤*出*现场实例?

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

但我怎么能显示出我所有的现货实例?这些工作都没有:

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

(该instance-lifecycle是空/空非现场的情况下,同样为spot-instance-request-id

+1

有你试图在价值=“正常”您的CLI查询 – Rajesh

+0

返回空响应,所以看起来不像那样。 – Jxtps

+0

您可以确认下面的语法是否适合您的需求? – Rajesh

回答

-1

如果您使用的是Windows平台,您可以使用下面的命令列出所有实例是是点播实例

aws ec2 describe-instances --query "Reservations[*].Instances[*].[InstanceId,InstanceLifecycle]" --output table --region eu-west-1 | find "None" 

同样,对于所有的现货例如

aws ec2 describe-instances --query "Reservations[*].Instances[*].[InstanceId,InstanceLifecycle]" --output table --region eu-west-1 | find "spot" 

在Linux环境下面可能得到的结果

aws ec2 describe-instances --query 'Reservations[*].Instances[*].[InstanceId, InstanceLifecycle]' --output text | 
%{if ($_.split("`t")[1] -match "None") { $_.split("`t")[2]; } } 

注:我还没有测试在Linux环境下命令,我目前还没有到Linux访问

+0

这是在客户端进行过滤,我试图避免。 – Jxtps

+0

为什么downvote,一个解释会有帮助? – Rajesh