Mi scuso se ho trascurato qualcosa di molto ovvio; Ho appena trovatojq
e sto cercando di usarlo per aggiornare un valore JSON senza influire sui dati circostanti.
Vorrei reindirizzare un curl
risultato jq
, aggiornare un valore e reindirizzare il JSON aggiornato a un file curl -X PUT
. Qualcosa di simile a
curl http://example.com/shipping.json | jq '.' field: value | curl -X PUT http://example.com/shipping.json
Finora l'ho hackerato insieme usando sed
, ma dopo aver guardato alcuni esempi |=
dell'operatore in jq
sono sicuro che non ne ho bisogno.
Ecco un esempio JSON: come utilizzerei jq
per impostare "local": false
, preservando il resto del JSON?
{
"shipping": {
"local": true,
"us": true,
"us_rate": {
"amount": "0.00",
"currency": "USD",
"symbol": "$"
}
}
}
"
, ad esempio.shipping.local = "new place"
. Quindi l'intero comando saràcurl http://example.com/shipping.json | jq '.shipping.local = "new place"'
. Altrimenti, otterrai strani errori.