繁体   English   中英

如何使用 jq 修改嵌套对象

[英]How to modify a nested object with jq

鉴于这种

{
  "some": "property",
  "nested": {
    "hello": "world"
  }
}

我想用 jq 得到这个结果

{
  "some": "property",
  "nested": {
    "hello": "world",
    "freshly": "added"
  }
}

那么如何添加新添加的字段呢? 我不知道根级别有多少属性(我想保留所有属性),我只知道嵌套对象的名称(此处为“嵌套”),我想添加的属性名称(这里是“新鲜的”)及其价值。

只需将新值分配给嵌套对象。

.nested.freshly = "added"

好吧,我找到了自己的方法。 如果您有更好的解决方案,欢迎您在这里提供。

jq '.nested=(.nested + {"freshly": "added"})'

你也可以简单地做

.nested += {freshly: "added"}

然后您可以一次添加多个嵌套键

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM