使用jq移除顶层模块并保留其内部键值对
使用jq提取顶层对象的内部内容
针对你的需求,直接用下面的jq命令就能实现:
jq '.SomeValue' input.json
命令解释
.SomeValue是jq的基础字段访问语法,作用是直接获取顶层JSON对象中SomeValue键对应的值,也就是它内部的{"x": "y", "a": "b"}部分。
验证示例
假设你的输入文件input.json内容是:
{ "SomeValue": { "x" : "y", "a" : "b" } }
执行命令后,输出结果就是:
{ "x": "y", "a": "b" }
扩展场景:如果顶层键不确定
如果你不确定顶层的键名(比如键名会变化,但始终只有一个顶层键值对),可以用更通用的写法:
jq '.[]' input.json
这个命令会遍历顶层对象的所有值,只要顶层只有一个对象,就能直接返回它的内部内容。
内容的提问来源于stack exchange,提问作者steve
相关产品推荐
相关产品推荐

