我有一个看起来像json的
{
"base": "abc",
"members" : [
{"fn": "maurice", "ln": "hickey"},
{"fn": "john", "ln": "smith"},
{"fn": "robin", "ln": "smith"},
...
],
"date": "2018-08-26"
}
我正在尝试编写一个jq过滤器以给我相同的模式输出,但只包含一个成员数组的子集,例如所有的“史密斯”
{
"base": "abc",
"members" : [
{"fn": "john", "ln": "smith"},
{"fn": "robin", "ln": "smith"}
],
"date": "2018-08-26"
}
任何指针将不胜感激。
答案 0 :(得分:2)
这将获得所需的输出。
jq '.members |= map(select(.ln == "smith"))'
它更新.members,仅选择.ln == smith的对象