Se você quiser saber apenas o número de mensagens que estão na fila de espera, o seguinte deverá fornecer uma resposta rápida:
find /var/spool/postfix/deferred -type f | wc -l
Existem três outras filas. Consulte o link para obter detalhes.
Existe um comando simples para descobrir o número atual de mensagens na fila de mensagens do linux? mailq
mostra uma lista detalhada, mas não é conveniente para uma rápida visão geral.
Estou usando o Ubuntu e o postfix.
Se você quiser saber apenas o número de mensagens que estão na fila de espera, o seguinte deverá fornecer uma resposta rápida:
find /var/spool/postfix/deferred -type f | wc -l
Existem três outras filas. Consulte o link para obter detalhes.
Você pode filtrar a saída e exibir somente a última linha:
mailq | tail -n 1
Como uma questão relacionada, você também pode obter o número de mensagens em sua caixa de correio armazenadas no formato mbox, modificando a sugestão de Brian Showalter usando o comando "mail -headers". Por exemplo, eu tenho essa linha no meu arquivo .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
Isso é
find /var/spool/postfix/deferred -type f | wc -l
Boa ideia, mas não funciona se o meu Zabbix-Agent não for executado como raiz. Então eu usei isso
NUM='mailq | grep -E "Requests" | awk '{print $5}''; if [ -z "$NUM" ]; then echo "0"; else echo $NUM; fi
para o meu próprio UserParameter.