Làm cách nào tôi có thể nhận được số lượng thư được đếm trong mailq của Postfix? mailq
lệnh hiển thị toàn bộ thư trong mailq nhưng tôi chỉ muốn biết đếm. Có bất kỳ lệnh nào cho việc này không. Hệ điều hành của tôi là centos 5.5.
Làm cách nào tôi có thể nhận được số lượng thư được đếm trong mailq của Postfix? mailq
lệnh hiển thị toàn bộ thư trong mailq nhưng tôi chỉ muốn biết đếm. Có bất kỳ lệnh nào cho việc này không. Hệ điều hành của tôi là centos 5.5.
Câu trả lời:
Tôi sử dụng cái này:
mailq | grep -c "^[A-F0-9]"
Bạn có thể dẫn đầu ra mailq
thông qua nhiều bộ lọc khác như uniq
, sort
và wc
để có được số liệu thống kê khác.
^[A-F0-9]
kết quả chính xác bằng 0 khi hàng đợi thư trống. Tôi đã chỉnh sửa câu trả lời.
tôi sử dụng
/usr/sbin/postqueue -p | /usr/bin/tail -n1 | /usr/bin/gawk '{print $5}'
có vẻ nhanh hơn grep nhưng không trả về 0
Tôi sử dụng:
mailq | grep -c "^ $"
Điều này về cơ bản giống như câu trả lời của @ Ladadadada về:
mailq | grep -c "^ [A-F0-9]"
Ngoại trừ tôi chỉ tìm kiếm các dòng trống theo sau mỗi mục nhập thư trong nhật ký mailq, chứ không phải là thứ gì đó trông giống như bắt đầu của ID thư hợp lệ. Do đó, nó là hiệu suất tốt hơn, mặc dù sự khác biệt chỉ đáng chú ý trên các kích thước nhật ký mailq rất điển hình.