在我的 JSON 中有一些具有Description属性的对象。如何使用 JQ 将此值复制到GMNotes同一对象的属性?
换句话说,一个人如何从
{
"ObjectStates": [
{
"Description": "",
"GMNotes": ""
},
{
"Description": "foo",
"GMNotes": ""
}
]
}
Run Code Online (Sandbox Code Playgroud)
到
{
"ObjectStates": [
{
"Description": "",
"GMNotes": ""
},
{
"Description": "foo",
"GMNotes": "foo"
}
]
}
Run Code Online (Sandbox Code Playgroud)
.ObjectStates[] | .GMNotes = .Description只返回修改后的对象,如沙箱中所示。
(我可以在 Perl 中轻松完成此操作。重点是使用jq。)
您可以与更新赋值运算符map()结合使用:|=
jq '(.ObjectStates)|=map(.GMNotes=.Description)' file.json
Run Code Online (Sandbox Code Playgroud)
https://jqplay.org/s/vFV_H4brlH
PS:除了使用map你也可以使用下面的命令,关键是使用|=.
jq '.ObjectStates[]|=(.GMNotes=.Description)' file.json
Run Code Online (Sandbox Code Playgroud)
谢谢切普纳!
https://jqplay.org/s/NCGezXPjLE
| 归档时间: |
|
| 查看次数: |
1537 次 |
| 最近记录: |