मैं एक अजीब समस्या है, मैं कई सर्वरों पर एक स्क्रिप्ट (बैश) चला रहा हूं और यह एक सर्वर पर काम करना बंद कर देता है (अन्य सभी सर्वरों पर पूरी तरह से ठीक काम करता है)।
यहाँ स्क्रिप्ट का समस्या भाग है: (मैंने इसे स्वयं नहीं लिखा था, सभी क्रेडिट "रिच" में जाते हैं) ( http://www.notrainers.org/monitoring-memory-usage-on-linux-with-nagios- और- nrpe / )
if [ "$result" -lt "$warn_level" ]; then #Line 56
echo "Memory OK. $result% used."
exit 0;
elif [ "$result" -ge "$warn_level" ] && [ "$result" -le "$critical_level" ]; then #Line 59
echo "Memory WARNING. $result% used."
exit 1;
elif [ "$result" -gt "$critical_level" ]; then #Line 62
echo "Memory CRITICAL. $result% used."
exit 2;
fi
पूर्ण त्रुटि संदेश:
./check_memory.sh: Line 56: [: 7.: integer expression expected
./check_memory.sh: Line 59: [: 7.: integer expression expected
./check_memory.sh: Line 62: [: 7.: integer expression expected
यदि आपको अधिक जानकारी की आवश्यकता है, तो मुझे बताएं और मैं इसे जितनी जल्दी हो सके आपूर्ति करने का प्रयास करूंगा।
सभी इनपुटों की सराहना करें :)
${result%%.*}यहाँ दशमलव बिंदु को हटाने के लिए सही विस्तार होगा। लेकिन ध्यान दें किcut -c -2वसीयत 100 या अधिक की संख्या के साथ भी मुद्दों का कारण बनेगी, इसलिए इसे पूरी तरह से छोड़ देना सुरक्षित है।