यदि मैंने कुछ स्पष्ट की अनदेखी की है, तो एप्लाइड; मैंने अभी पाया है 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 नमूना है - मैं JSON के बाकी हिस्सों को संरक्षित करते हुए कैसे jq
सेट करूँगा "local": false
?
{
"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"'
। अन्यथा, आपको अजीब त्रुटियां मिलेंगी।