【问题标题】:Retrieve elements from two levels using AWS CLI 'describe-instances'使用 AWS CLI 'describe-instances' 从两个级别检索元素
【发布时间】:2019-02-04 23:40:49
【问题描述】:

我想 --query 跨多个级别的 aws ec2 describe-instances API。例如,我想结合:

aws ec2 describe-instances --query 'Reservations[*].Instances[*].[ImageId, InstanceType, KeyName, State.Name, PublicIpAddress, NetworkInterfaces.Groups.GroupName]' --output json

以及诸如 OwnerId 之类的字段,它们是实例之上的一个级别。

【问题讨论】:

    标签: amazon-web-services aws-cli


    【解决方案1】:

    您可以通过在 Instances[*] 之前指定顶级 OwnerId 来包含它:

    aws ec2 describe-instances --query 'Reservations[*].[OwnerId,Instances[*].[ImageId, InstanceType, KeyName, State.Name, PublicIpAddress, NetworkInterfaces.Groups.GroupName]]' --output json
    

    但是,与实例存在一对多关系这一事实意味着它将在更高级别返回:

    [
        [
            "123456789012", 
            [
                [
                    "ami-48d38c2b", 
                    "t2.micro", 
                    "class", 
                    "running", 
                    "54.2.33.44", 
                    null
                ]
            ]
        ], 
        [
            "123456789012", 
            [
                [
                    "ami-f806349b", 
                    "t2.small", 
                    "class", 
                    "running", 
                    "54.1.22.33", 
                    null
                ]
            ]
        ]
    ]
    

    顺便说一句,OwnerId 只是拥有资源的 AWS 账户的 ID,几乎在所有情况下都是相同的值。

    【讨论】:

    • 感谢语法!我在多帐户设置中使用它,并且 OwnerId 很有用。欣赏它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-01-25
    • 2018-11-15
    • 2022-06-24
    • 1970-01-01
    • 2020-10-27
    • 2017-10-11
    • 1970-01-01
    相关资源
    最近更新 更多