Видалення з усіх (-А) скриньок старших за 90 і 60 днів, з папок Trash і Junk відповідно.
doveadm expunge -A mailbox Trash savedbefore 90d
doveadm expunge -A mailbox Junk savedbefore 60d
Видалення з вказаної скриньки
doveadm expunge mailbox Junk -u email@domain.com savedbefore 60d
Показ дописів із міткою imap. Показати всі дописи
Показ дописів із міткою imap. Показати всі дописи
Синхронізація двох imap-скриньок
Синхронізація двох imap-скриньок. Дуже корисна утиліта при переносах поштових серверів, доменів, скриньок.
imapsync --host1 127.0.0.1 --user1 mail.server1.com --password1 pa$$w0rd \
--host2 mail.server2.com --user2 email@domain2.com --password2 pa$$w0rd
Очищення imap скриньки від старих листів
Прийшло таке дивне робоче повідомлення, але здивування було більше, коли в скрині виявилось 103 тисячі повідомлень.
Ділюсь скриптом, який за 5 хвилин видалив 70 тисяч повідомлень.
#!/usr/bin/python
MAIL_SERVER = 'mail.server.com'
USERNAME = 'login@domain.com'
PASSWORD = 'pass'
MAILBOX = 'INBOX'
MAX_DAYS = 392 # Deletes messages older than a week
import imaplib
import datetime
today = datetime.date.today()
cutoff_date = today - datetime.timedelta(days=MAX_DAYS)
before_date = cutoff_date.strftime('%d-%b-%Y')
search_args = '(BEFORE "%s")' % before_date
imap = imaplib.IMAP4(MAIL_SERVER)
imap.login(USERNAME, PASSWORD)
imap.select(MAILBOX)
typ, data = imap.search(None, 'ALL', search_args)
for num in data[0].split():
print num
imap.store(num, '+FLAGS', '\\Deleted')
imap.expunge()
imap.close()
imap.logout()
Підписатися на:
Дописи (Atom)
