给出这样的输入:
{
"type": "collection",
"foo": "bar",
"children": [
{
"properties": {
"country": "GB"
},
"data": "..."
},
{
"properties": {
"country": "PL"
},
"data": "..."
}
]
}
如何使用jq
保留所有JSON结构,但使用select()
过滤掉一些孩子。例如,如果我只想返回国家GB的孩子,我希望得到以下结果:
{
"type": "collection",
"foo": "bar",
"children": [
{
"properties": {
"country": "GB"
},
"data": "..."
}
]
}
如果我只想要孩子,.children[] | select(.properties.country == "GB")
这很容易,但不会保留其余的JSON。