我有几个文件,每个文件都有一个不同名称的包装元素。例如:{"a":{"x":0}}
和{"b":{"y":1, "z":2}}
。
如果不按名称选择,我可以选择最外层包装元素的内容吗?
答案 0 :(得分:1)
您可以像这样使用jq
:
jq -r 'to_entries[0].value' file.json
说明:
to_entries
函数会像这样转换json:
jq 'to_entries[0]' <<< '{"b":{"y":1, "z":2}}'
{
"key": "b",
"value": {
"y": 1,
"z": 2
}
}
添加.value
只会为您提供值。
答案 1 :(得分:1)
更容易:
jq '.[]'
输出(使用-c选项):
{"x":0}
{"y":1,"z":2}