繁体   English   中英

AWS CLI:尝试为子网编写查询

[英]AWS CLI: try to write query for subnets

列出路由表时,我想显示所有拥有多个路由的子网 ID,但我做错了。

$ aws ec2 describe-route-tables --region us-west-2 --query 'RouteTables[*]'
[
    {
        "Associations": [
            {
                "Main": false,
                "RouteTableAssociationId": "rtbassoc-0c6d59285cc28b997",
                "RouteTableId": "rtb-0d56ac20552c39cb4",
                "SubnetId": "subnet-029daed7c320c9cc0",
                "AssociationState": {
                    "State": "associated"
                }
            }
        ],
        "PropagatingVgws": [],
        "RouteTableId": "rtb-0d56ac20552c39cb4",
        "Routes": [
            {
                "DestinationCidrBlock": "10.96.110.0/23",
                "GatewayId": "local",
                "Origin": "CreateRouteTable",
                "State": "active"
            },
            {
                "DestinationCidrBlock": "0.0.0.0/0",
                "GatewayId": "igw-02fae1eda618a542d",
                "Origin": "CreateRoute",
                "State": "active"
            }
        ],

我在下面尝试了一些但它失败了。

$ aws ec2 describe-route-tables --region us-west-2 --query 'RouteTables[?Routes[].Size>1].Associations[*].SubnetId'
Bad value for --query RouteTables[?Routes[].Size > 1].Associations[*].SubnetId: invalid token: Parse error at column 29, token "1" (NUMBER), for expression:
"RouteTables[?Routes[].Size > 1].Associations[*].SubnetId"
                              ^

我认为以下应该做你所追求的:

RouteTables[?length(Routes[*]) > `1`].Associations[*].SubnetId

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM