如何使用 AWS CLI 获取 NAT 网关公共 IP?

nev*_*ial 2 json amazon-ec2 amazon-web-services aws-cli jq

给定 VPC id;我使用 AWS CLI 和 jq 来派生给定 VPC ID 的 NAT 网关地址。这是我到目前为止所拥有的:

aws ec2 describe-nat-gateways --region='${aws_region}' | jq -r --arg efs_name ${vpcid} '.[] | .[] | select(.VpcId==$vpcid) | {nats: .NatGatewayAddresses}'
Run Code Online (Sandbox Code Playgroud)

输出是:

{
  "nats": [
            {
             "PublicIp": "52.34.207.107",
             "NetworkInterfaceId": "eni-0bc0d320",
             "AllocationId": "eipalloc-fa7739c0",
             "PrivateIp": "172.20.130.224"
            }
          ]
}
Run Code Online (Sandbox Code Playgroud)

有没有办法PublicIp直接使用 AWS CLI 筛选器获取 nat-gateways 资源?

Joh*_*ein 5

用于--query提取字段:

aws ec2 describe-nat-gateways --query 'NatGateways[*].NatGatewayAddresses[*].PublicIp' 
Run Code Online (Sandbox Code Playgroud)