मेरे पास मेरे प्रश्न के लिए एक समाधान खोजने के लिए है, लेकिन एक या बेहतर नहीं मिला मैंने कहा कि मुझे वह नहीं मिला जो मैंने पाया। तो चलो मेरी समस्या के बारे में बात करते हैं। मैं एक रास्पबेरी पाई पर एक स्मार्ट होम कंट्रोल सॉफ्टवेयर का उपयोग कर रहा हूं और जैसा कि मैंने इस सप्ताह के अंत में पाया कि मैं अपने आउटडोर तापमान सेंसर से डेटा प्राप्त कर सकता हूं। पायलट-प्राप्त का उत्पादन इस तरह दिखता है:
{
"message": {
"id": 4095,
"temperature": 409.5
},
"origin": "receiver",
"protocol": "alecto_wsd17",
"uuid": "0000-b8-27-eb-0f3db7",
"repeats": 3
}
{
"message": {
"id": 1490,
"temperature": 25.1,
"humidity": 40.0,
"battery": 1
},
"origin": "receiver",
"protocol": "alecto_ws1700",
"uuid": "0000-b8-27-eb-0f3db7",
"repeats": 3
}
{
"message": {
"id": 2039,
"temperature": 409.5
},
"origin": "receiver",
"protocol": "alecto_wsd17",
"uuid": "0000-b8-27-eb-0f3db7",
"repeats": 4
}
अब आपसे मेरा सवाल: मैं 1490 पर जहां तापमान 1490 है, वहां से मैं कैसे तापमान और आर्द्रता निकाल सकता हूं। और आप मुझे बार-बार जांच करने की सलाह कैसे देंगे? प्रत्येक 10 मिनट चलने वाली क्रॉन जॉब द्वारा, पाइलट-प्राप्त का एक आउटपुट बनाता है, आउटपुट का डेटा निकालता है और इसे स्मार्ट होम कंट्रोल एपी में धकेलता है।
किसी को एक विचार है - बहुत बहुत धन्यवाद
awk
और sed
बशर्ते JSON आउटपुट यहां दिखाए गए स्वरूपण को बनाए रखता है, जिसकी आवश्यकता नहीं है - JSON के लिए व्हॉट्सएप कोई मायने नहीं रखता है। उदाहरण के लिए, यह awk
कमांड: awk '/temperature|humidity/ {print $2}'
करीब है।