क्या लिनक्स मेल कतार में संदेशों की वर्तमान संख्या का पता लगाने के लिए एक सरल कमांड है? mailq
एक क्रिया सूची को बाहर निकालता है, लेकिन यह त्वरित अवलोकन के लिए सुविधाजनक नहीं है।
मैं उबंटू और पोस्टफिक्स का उपयोग कर रहा हूं।
क्या लिनक्स मेल कतार में संदेशों की वर्तमान संख्या का पता लगाने के लिए एक सरल कमांड है? mailq
एक क्रिया सूची को बाहर निकालता है, लेकिन यह त्वरित अवलोकन के लिए सुविधाजनक नहीं है।
मैं उबंटू और पोस्टफिक्स का उपयोग कर रहा हूं।
जवाबों:
यदि आप केवल स्थगित कतार में बैठे संदेशों की संख्या जानना चाहते हैं, तो आपको निम्न उत्तर प्राप्त करना चाहिए:
find /var/spool/postfix/deferred -type f | wc -l
तीन अन्य कतारें हैं। देखें http://www.porcupine.org/postfix/queueing.html जानकारी के लिए।
find /var/spool/mqueue -type f | wc -l
और यह find /var/spool/mqueue-rx -type f | wc -l
दो कतारें हैं और उपसर्ग का उपयोग नहीं करते हैं।
आप आउटपुट को फ़िल्टर कर सकते हैं और केवल अंतिम पंक्ति प्रदर्शित कर सकते हैं:
mailq | tail -n 1
संबंधित विषय के रूप में, आप अपने मेलबॉक्स में संदेशों की संख्या को "मेल - हेडर" का उपयोग करके ब्रायन शॉल्टर के सुझाव को संशोधित करके mbox प्रारूप में संग्रहीत कर सकते हैं। उदाहरण के लिए, मेरे पास मेरी .bashrc फ़ाइल में यह पंक्ति है:
if [ -s /var/mail/$(whoami) ] ; then echo -e "\nYou have $(ls -s -h /var/mail/$(whoami) | cut -d" " -f 1) of mail. Number of messages: $(mail --file /var/mail/$(whoami) --headers | wc -l) ($(mail --file /var/mail/$(whoami) --headers | sed '/^>* *[0-9]/d' | wc -l) unread)" ; fi
ये है
find /var/spool/postfix/deferred -type f | wc -l
अच्छा विचार है, लेकिन यह काम नहीं करता है अगर मेरा Zabbix- एजेंट रूट के रूप में नहीं चलता है। इसलिए मैंने इसका इस्तेमाल किया
NUM=`mailq | grep -E "Requests" | awk '{print $5}'`; if [ -z "$NUM" ]; then echo "0"; else echo $NUM; fi
अपने खुद के UserParameter के लिए।