【发布时间】:2018-06-07 15:08:37
【问题描述】:
我想使用 JQ 修改以下 JSON 输入:
{
"rows": [
{
"fields": [
{
"name": "id",
"value": "k1"
},
{
"name": "val",
"value": "2340378b211aa3d8f2d7607cbddce883b87b191d0425736641e3d308ea329718"
},
{
"name": "Encoding",
"value": "hex"
}
]
},
{
"fields": [
{
"name": "id",
"value": "k2"
},
{
"name": "val",
"value": "2340378b211aa3d8f2d7607cbddce883b87b191d0425736641e3d308ea329718"
},
{
"name": "Encoding",
"value": "hex"
}
]
}
]
}
以便将名称为"Encoding" 的"value" 字段的"hex" 值修改为"oct"仅 用于包含.name=="id" and .value=="k1" 字段的行。
我该怎么做?我可以select 一个带有.value=="k1" 等的字段,但我似乎无法找到一种方法来“上树”以随后更新"Encoding" 字段。
不能期望输入具有固定的字段/行顺序。
【问题讨论】: