ฉันจะรับจำนวนข้อความใน Mailq ของ Postfix ได้อย่างไร mailq
คำสั่งแสดงอีเมลทั้งหมดใน mailq แต่ฉันต้องการที่จะรู้ว่านับเท่านั้นมีคำสั่งใด ๆ สำหรับเรื่องนี้ ระบบปฏิบัติการของฉันคือ centos 5.5
ฉันจะรับจำนวนข้อความใน Mailq ของ Postfix ได้อย่างไร mailq
คำสั่งแสดงอีเมลทั้งหมดใน mailq แต่ฉันต้องการที่จะรู้ว่านับเท่านั้นมีคำสั่งใด ๆ สำหรับเรื่องนี้ ระบบปฏิบัติการของฉันคือ centos 5.5
คำตอบ:
ฉันใช้สิ่งนี้:
mailq | grep -c "^[A-F0-9]"
คุณสามารถท่อส่งออกของmailq
ผ่านตัวกรองอื่น ๆ เช่นuniq
, sort
และwc
จะได้รับสถิติอื่น ๆ
^[A-F0-9]
ผลลัพธ์เป็น 0 อย่างถูกต้องเมื่อคิวจดหมายว่างเปล่า ฉันแก้ไขคำตอบแล้ว
อย่างใดอย่างหนึ่งmailq | tail -n 1
หรือfind /var/spool/postfix/deferred -type f | wc -l
ทั้งงาน
ไพพ์ ouput เป็น wc หากต้องการการกลั่นเพิ่มเติมให้ใช้ grep
ฉันใช้
/usr/sbin/postqueue -p | /usr/bin/tail -n1 | /usr/bin/gawk '{print $5}'
ดูเหมือนเร็วกว่า grep แต่ไม่มี 0 คืน
ฉันใช้:
mailq | grep -c "^ $"
นี่เป็นสิ่งเดียวกับคำตอบของ @ Ladadadada ของ:
mailq | grep -c "^ [A-F0-9]"
ยกเว้นฉันกำลังมองหาบรรทัดว่างที่ติดตามแต่ละข้อความในบันทึก mailq ไม่ใช่สิ่งที่ดูเหมือนจุดเริ่มต้นของรหัสข้อความที่ถูกต้อง ดังนั้นจึงเป็นการดีกว่าประสิทธิภาพที่ดีกว่าถึงแม้ว่าความแตกต่างจะสังเกตเห็นได้เฉพาะบนขนาดบันทึกเมลแบบทั่วไป