您还可以使用以下jq命令以这种方式展平嵌套的JSON对象:
[leaf_paths as $path | {"key": $path | join("."), "value": getpath($path)}] | from_entries
它的工作方式是:
leaf_paths返回一个数组流,这些数组代表给定JSON文档上出现“叶子元素”的路径,即没有子元素的元素,例如数字,字符串和布尔值。我们将该流通过管道传递到具有
key和
value属性的对象中,其中
key包含路径数组的元素(由点组成的字符串),并
value包含该路径处的元素。最后,我们将整个对象放入一个数组中并
from_entries在其上运行,这将一个
{key,value}对象数组转换为包含这些键值对的对象。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)