【发布时间】:2018-07-05 06:22:12
【问题描述】:
当子元素值为client_release时,我想从JSON数据中打印父元素的ID。
如果 data.properties.value== "client_release"
那么输出应该是
abcd1g2f,hirk5d7b3l
我在下面尝试过,但没有运气
jq '.data[].properties[]|select(.value=="client_release")|.id'
JSON 数据如下:
{
"data":[
{
"id":"abcd1g2f",
"resourceURI":"https://somerepo.com/service/local/privileges/abcd1g2f",
"name":"release1",
"description":"release1",
"type":"target",
"userManaged":true,
"properties":[
{
"key":"repositoryGroupId",
"value":""
},
{
"key":"method",
"value":"create,read"
},
{
"key":"repositoryId",
"value":"client_release"
},
{
"key":"repositoryTargetId",
"value":"1"
}
]
},
{
"id":"asdf1k4g",
"resourceURI":"https://somerepo.com/service/local/privileges/asdf1k4g",
"name":"release2",
"description":"release2",
"type":"target",
"userManaged":true,
"properties":[
{
"key":"repositoryGroupId",
"value":""
},
{
"key":"method",
"value":"read"
},
{
"key":"repositoryId",
"value":"formal_release"
},
{
"key":"repositoryTargetId",
"value":"1"
}
]
},
{
"id":"hirk5d7b3l",
"resourceURI":"https://somerepo.com/service/local/privileges/hirk5d7b3l",
"name":"release3",
"description":"release3",
"type":"target",
"userManaged":true,
"properties":[
{
"key":"repositoryGroupId",
"value":""
},
{
"key":"method",
"value":"create,read"
},
{
"key":"repositoryId",
"value":"client_release"
},
{
"key":"repositoryTargetId",
"value":"1"
}
]
}
]
}
【问题讨论】: