【发布时间】:2019-07-18 21:53:05
【问题描述】:
鉴于我们不知道文件中键的名称,我正在尝试查找 Json 文件中的所有常用键。
Json 文件如下所示:
{
"DynamicKey1" : {
"foo" : 1,
"bar" : 2
},
"DynamicKey2" : {
"bar" : 3
},
"DynamicKey3" : {
"foo" : 5,
"zyx" : 5
}
}
预期结果:
{
"foo"
}
我试图在这里应用 reduce/foreach 逻辑,但我不确定如何在 jq 中编写它。感谢您的帮助!
jq '. as $ss | reduce range(1; $ss|length) as $i ([]; . + reduce ($ss[i] | keys) as $key ([]; if $ss[$i - 1] | has($key) then . +$key else . end))' file.json
【问题讨论】:
标签: json key jq set-intersection