Postfix의 mailq 메시지는 어떻게 계산합니까?


10

Postfix의 mailq에서 메시지 개수를 어떻게 알 수 있습니까? mailq명령은 mailq에 전체 메일을 표시하지만 개수 만 알고 싶습니다 .이 명령이 있습니다. 내 OS는 centos 5.5입니다.

답변:


20

나는 이것을 사용한다 :

mailq | grep -c "^[A-F0-9]"

당신은 파이프의 출력 수 mailq등 다양한 필터를 통해 uniq, sort그리고 wc다른 통계를 얻을 수 있습니다.


이것은 정확하지 않습니다. Postfix 대기열이 비어 있으면 'mailq'를 실행하면 "^ [0-9A-Z]"와 일치하는 "Mail queue is empty"가 표시됩니다. 그리고 그러한 상황에서는 정확하지 않습니다.
andy

1
더 나은 정규 표현식은 ^[A-F0-9]메일 큐가 비어있을 때 올바르게 0이됩니다. 답변을 편집했습니다.
Ladadadada

출력의 마지막 줄이 얼마나 바보인지
Geoffrey

16

하나 mailq | tail -n 1또는find /var/spool/postfix/deferred -type f | wc -l

두 작품


1
"26472 요청에서 682430KB를 얻습니다." 첫 번째는 "23", 두 번째는 "23"입니다.
rob

0

출력을 wc에 파이프하십시오. 추가 정제가 필요한 경우 grep을 사용하십시오.


0

나는 사용한다

/usr/sbin/postqueue -p | /usr/bin/tail -n1 | /usr/bin/gawk '{print $5}'

grep보다 빠르지 만 0이 반환되지 않습니다.


0

나는 사용한다:

mailq | grep -c "^ $"

이것은 @Ladadadada의 대답과 본질적으로 동일합니다.

mailq | grep -c "^ [A-F0-9]"

필자는 유효한 message-ID의 시작처럼 보이는 것이 아니라 mailq 로그의 각 메시지 항목 뒤에 나오는 빈 줄을 찾고 있습니다. 따라서 매우 일반적인 mailq 로그 크기에서만 차이가 눈에 띄지 만 성능 측면에서는 더 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.