如何提取所有键名,即使在带有jq的嵌套对象中也是如此?例如,我有json:
{
"a": 1,
"b": {
"c": 2
}
}
我想得到清单:a,b,bc
我知道对于顶级密钥,我可以通过以下命令获得它
. | to_entries[] | .key,但是嵌套对象中的密钥呢?
简短的jq解决方案:
jq -r '[paths | join(".")]' jsonfile
Run Code Online (Sandbox Code Playgroud)
输出:
[
"a",
"b",
"b.c"
]
Run Code Online (Sandbox Code Playgroud)
paths 函数将路径输出到其输入中的所有元素
join(".") -在层次路径中串联键
| 归档时间: |
|
| 查看次数: |
1921 次 |
| 最近记录: |