He configurado algunos trabajos cron y envían el resultado cron a un correo electrónico. Ahora, a lo largo de los meses, he acumulado una gran cantidad de correos electrónicos.
Ahora mi pregunta es ¿cómo puedo purgar todos esos correos electrónicos de mi buzón?

Respuestas:
Simplemente puede eliminar el
/var/mail/usernamearchivo para eliminar todos los correos electrónicos de un usuario específico. Además, los correos electrónicos salientes que aún no se hayan enviado se almacenarán en/var/spool/mqueue.fuente
usernametiene que ser reemplazado por el usuario para el que desea eliminar los correos electrónicos. En su caso, los correos electrónicos se envían al usuario llamadocron_results, por lo que deberá eliminarlos/var/www/cron_results.manera alternativa:
-NInhibe la visualización inicial de los encabezados de los mensajes al leer el correo o editar una carpeta de correo.d *borrar todos los correosfuente
> mboxen el directorio de inicio, esto solo trunca el archivo mbox.Solo usa:
Lo cual eliminará todos los mensajes entre el número 1 y el 15. Para eliminar todos, use el
d *.Acabo de usar esto yo mismo en ubuntu 12.04.4, y funcionó de maravilla.
Por ejemplo:
Luego revise su correo nuevamente:
Lo que te está tropezando es que estás usando
xoexitpara salir, lo que revierte los cambios durante esa sesión.fuente
d*, al menos en adelanteCentOS 7.exitlugar dequithacerme tropezar.exitcancelará la sesión, por lo que cualquier correo electrónico pendiente de eliminación quedará intacto.quitvolverá a escribir los cambios, por lo que los correos electrónicos eliminados se confirman en ese punto.d 1-15funciona en Debian 8. ¡Gracias!En lugar de eliminar, creo que podemos anular el archivo, porque el archivo se creará si el servicio de correo aún está activado. Algo como lo siguiente hará el trabajo
Y sí, perdón por despertar este viejo hilo, pero sentí que podía contribuir.
fuente
Un trazador de líneas:
fuente
yes 'd' | mailfunciona como se esperaba.En UNIX / Linux / Mac OS X puede copiar y anular archivos, ¿no? Entonces, ¿qué tal esta solución?
fuente
Si está usando cyrus / sasl / imap en su servidor de correo, entonces una forma rápida y eficiente de purgar todo en un buzón que es anterior al número de días especificado es usar el comando cyrus / imap ipurge . Por ejemplo, aquí hay un ejemplo que elimina todo (¡tenga cuidado!), Anterior a 30 días desde el usuario vleo . Tenga en cuenta que debe iniciar sesión como usuario de cyrus (administrador de correo imap):
[cyrus@mailserver ~]$ /usr/lib/cyrus-imapd/ipurge -f -d 30 user.vleo Working on user.vleo... total messages 4 total bytes 113183 Deleted messages 0 Deleted bytes 0 Remaining messages 4 Remaining bytes 113183fuente
En lugar de usar "d", ¿por qué no "p"? No estoy seguro si la "p *" funcionará. No intenté eso. Usted puede; sin embargo, use el siguiente script "
fuente