Tenho um objeto JSON enorme com um array de objetos dentro dele. Tenho que adicionar o par chave:valor a um objeto específico no array. Por exemplo, deixe o objeto de entrada ser:
{
"a": {
"b": [
{
"name": "name1",
"value": 1,
"param": {
"p1": "par1"
}
},
{
"name": "name2",
"value": 2,
"param": {
"p1": "par2"
}
},
{
"name": "name3",
"value": 3,
"param": {
"p1": "par3"
}
}
],
"c": 4,
"d": 5
}
}
Usando o índice a modificação é fácil:
jq '.a.b[0].param += {new: "QQQ"}'
Mas não posso ter 100% de certeza do índice. Tenho que especificar o objeto com a tag name .name == "name1"
.
Como modificar um objeto identificado por etiqueta de nome?