Один из моих пользователей получил какие-то отладочные данные, отправленные по адресу на моем сервере.
Что-то "пошло не так", и теперь у меня в почтовом ящике 35000 писем. Мне нужно удалить эти письма, все они с одного конкретного адреса. Остальные инбо должны оставаться нетронутыми.
Как мне этого добиться?
Платформа: CentOS 5 с DirectAdmin, Dovecot, Exim.
Dovecot v.2 имеет утилиту под названием doveadm
которые позволяют ряд функций.
http://wiki2.dovecot.org/Tools/Doveadm/Expunge
Команда
doveadm expunge -u jane.doe@example.org savedbefore 2w
Удалите все сообщения старше двух недель из почтового ящика jane.doe.
Если у вас dovecot v.1, вам необходимо использовать системную утилиту find
:
find -E $userdir \
-type f \
-iregex ".*(cur|new).*" \
! -newerBt "1 month ago" \
-exec rm {} \;
Если вы знакомы с python, просто напишите быстрый сценарий, используя поплиб