【发布时间】:2017-08-11 10:12:32
【问题描述】:
给定这样的输入:
{
"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 的其余部分。
【问题讨论】: