Eu tenho um arquivo JSON que preciso atualizar um valor específico.
{
"Comment": "comment",
"test": {
"enabled": true
},
"enabled": true,
"otherStuff": blah,
"otherStuff2": blah,
"otherStuff3": blah,
}
Gostaria de mudar o valor do segundo "enabled" para false. Com o JQ Parser, posso recuperá-lo facilmente com jq '.enabled ', mas não tenho certeza de qual é a melhor maneira de manipular o JSON.
O JSON é uma resposta que recebo de uma API e pode mudar no futuro, não posso confiar na linha ou valor antes/depois.
um rápido experimento:
Eu li a pergunta como "no shell" e não necessariamente como "usando apenas bash builtins".
Tente jsawk , que permite manipulação e é programável, embora dependa de js como dependência.
Se tudo o que você deseja fazer é ler uma chave (exclusiva) da resposta JSON, você pode (adaptado de Brendan OConnor ):