JSON解析数组元素

时间:2018-09-03 18:49:05

标签: shell curl jq

我有一个Json,通过调用api可以得到这样的结果,我该如何在curl中使用JQ查询通过传递1111来获取envname

{
  "EnvMappings": [
  {
    "EnvName": "lab",
    "Stores": [
       "1111",
       "2222"
     ]
 }
]

}

curl -s "<<MYAPI>>" | jq -Mr '.EnvMappings[].EnvName' | tr '[A-Z]' '[a-z]' | sort

1 个答案:

答案 0 :(得分:1)

我假设您要获取所有EnvName下包含某个值的Stores

.EnvMappings[] | select(any(.Stores[]; . == "1111")).EnvName