目前这有效:
array = ["darwin","intel"]
如果{{1}}它返回包含darwin"和"的对象。英特尔。 如何让它返回包含darwin"和/或"的对象?英特尔?
答案 0 :(得分:1)
假设您的jq有any/2
,我建议您使用intersectq/2
的以下定义:
def intersectq(a;b): any(a[]; . as $x | any( b[]; . == $x) );
然后使用的过滤器就是:
.[] | select( intersectq(.hosts; $array)) | .hostName
如:
jq --argjson array '["darwin","intel"]' -r -f program.jq hosts.json