鉴于输入的json
[
{"title": "first line"},
{"title": "second line"},
{"title": "third line"}
]
我们如何提取仅包含第二个“过滤器”数组中列出的关键字的标题。例如,可以使用shell变量:
filter='["second", "third"]'
在这种情况下,输出将会是:
[
{"title": "second line"},
{"title": "third line"}
]
此外,如何使用数组过滤器否定条件。
例如:仅返回前一个示例中的“第一行”条目。
有一个类似的回答,但使用旧版本的jq。(参见此处)我希望在当前版本的jq中有更直观/可读的方法来完成这个任务。
test()
。感谢您还添加了一种聪明的方法来解析shell数组并将结果作为输入传递。 - Bernard