Прошу прощения, если я пропустил что-то очень очевидное; Я только что нашел jq
и пытаюсь использовать его для обновления одного значения JSON, не затрагивая окружающие данные.
Я хотел бы передать curl
результат jq
, обновить значение и передать обновленный JSON в файл curl -X PUT
. Что-то вроде
curl http://example.com/shipping.json | jq '.' field: value | curl -X PUT http://example.com/shipping.json
До сих пор я хакнул его вместе с помощью sed
, но, посмотрев несколько примеров |=
оператора в, jq
я уверен, что они мне не нужны.
Вот образец JSON - как мне jq
установить "local": false
, сохранив остальную часть JSON?
{
"shipping": {
"local": true,
"us": true,
"us_rate": {
"amount": "0.00",
"currency": "USD",
"symbol": "$"
}
}
}
"
его, например.shipping.local = "new place"
. Так что вся команда будетcurl http://example.com/shipping.json | jq '.shipping.local = "new place"'
. В противном случае вы получите странные ошибки.