小编cp_*_*egg的帖子

使用jq解析AWS CLI的json输出

我想使用jq(http://stedolan.github.io/jq/)来解析来自aws elb describe-load-balancers的json输出,并仅在AvailabilityZones包含特定值的地方返回名称和AZ.

这是代表源输出的部分编辑的json:

{
  "LoadBalancerDescriptions": [
    {
    {
      "AvailabilityZones": [
        "us-east-1b",
        "us-east-1c",
        "us-east-1d"
      ],
      "CanonicalHostedZoneName": "example.us-east-1.elb.amazonaws.com",
Run Code Online (Sandbox Code Playgroud)

在指定AvailabilityZones键的完整值列表时,我只能使其工作.

$ aws elb describe-load-balancers --region us-east-1 |jq '.LoadBalancerDescriptions[] | select(.AvailabilityZones == ["us-east-1b", "us-east-1c", "us-east-1d"]) | .CanonicalHostedZoneName, .AvailabilityZones'
Run Code Online (Sandbox Code Playgroud)

上面的工作,但我想只选择它是否包含"us-east-1b"的值,而不管其他值.

bash json jq

6
推荐指数
1
解决办法
6357
查看次数

标签 统计

bash ×1

jq ×1

json ×1