Como faço para excluir todos os emails do Terminal?

94

Eu configurei um cronjob há muito tempo que agora não existe. Sempre que eu abro o Terminal, ele agora diz "Você tem e-mail". Eu tenho algo como 100 mensagens que dizem a mesma coisa. Como excluo em massa todas as mensagens?

daviesgeek
fonte
1
Eu nem sabia que um MTA foi incorporado ao OS X. Embora agora que penso nisso, francamente, não estou surpreso.
Jason SALAZ
@JasonSalaz Esqueci de perguntar, o que é um MTA?
Daviesgeek
1
Agente de Transferência de Correio. Em caso de dúvida, Wikipedia . Eu conheço, pelo menos, MTAs, MSAs, MDAs e MUAs.
Jason Salaz 01/02

Respostas:

182

Inicie o mailutilitário UNIX executando isso no prompt de comando (por exemplo, Terminal.app):

$ mail

Você verá uma lista de todas as suas mensagens. No prompt de email, faça

? delete *
? q

E deve ser isso. Certifique-se de fazer o qapós o delete *comando, que salva as alterações no disco.

chrismanderson
fonte
No começo, eu não sabia o que significa aplicativo de email. Para quem está tendo o mesmo problema, "é um comando". Basta digitar no terminal e você obterá um aplicativo interativo em execução lá. +1 Obrigado
Nabin
Você também pode usar del 1onde 1 é o número da mensagem, caso precise manter algum email para fins de depuração.
Fadli Saad 27/01
continuou seguindo outras respostas, mas costumava exitsair e não funcionava. Obrigado por mencionar a qopção.
frezq
10

Você também pode seguir a rota direta e apenas correr : > /var/mail/$USERpara esvaziar o arquivo de mensagens.

PS: A exclusão do arquivo de mensagens requer sudo, basta defini-lo como vazio.

nohillside
fonte
0

Sei que este post é antigo, mas quero contribuir com uma resposta.

Para excluir suas mensagens, faça o seguinte:

sudo rm /var/mail/[user]

E, para fazer a pergunta, sugiro que você faça o seguinte em cada crontab que não deseja enviar uma notificação por e-mail (desta forma, seu e-mail não terá e-mails)

* * * * * /path/to/script.sh > /dev/null 2>&1

ou

* * * * * command > /dev/null 2>&1
Jorge
fonte