json – jq – 选择具有给定键名称的对象

前端之家收集整理的这篇文章主要介绍了json – jq – 选择具有给定键名称的对象前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个任意结构有很多级别等等.我需要选择所有包含名为updateDate的对象.如何用jq?我想出了一种方法,但是当它访问一个我必须打破的叶子时,它也会产生无效数据类型的错误
jq 'recurse(.[]) | has("updateDate")' | grep -Fv error

我真的不明白如何检查类型或叶子,我怀疑有一个更简单的方法来实现我想要的?

解决方法

在1.4你可以:
jq '..|.updateDate?'

如果你坚持使用1.3,你可以使用更长的程序,如:

jq 'recurse(if type == "array" or type = "object" then .[] else empty end) | if type == "object" then .updateDate else empty end'
原文链接:https://www.f2er.com/js/149862.html

猜你在找的JavaScript相关文章