clean-mail-folders

0
readme.md

Описание

Программа очищает почтовые папки пользователей на сервере linux по конфигурации из файла настроек. В файле задается путь до папки, содержащей аккаунты пользователей, аккаунт пользователя, имя папки и количество дней. Все письма в заданной директории будут удалены, если они старше указанного количества дней.

Программа находит папку аккаунта пользователя в различных вариантах:

  • /mailfolder/ivanov
  • /mailfolder/ivanov/Maildir
  • /mailfolder/i/v/a/ivanov-yyyy.mm.dd.hh.mm.ss
  • /mailfolder/i/v/a/ivanov-yyyy.mm.dd.hh.mm.ss/Maildir

Далее ищутся нужные папки в формате utf7-imap и очищаются по времени.

Файл настроек может содержать любое количество почтовых папок, аккаунтов пользователя, папок пользователя.

Файл настроек

  • mail_abs_folder
    - абсолютный путь к папке с почтовыми аккаунтами
  • user_name
    - имя почтового аккаунта
  • clean_folder
    - список папок для очистки
  • name
    - имя папки для очистки. Задается иерархически, через точку, без пробелов. Пример: для папки "Не хранить" внутри папки "Входящие" значением будет "Входящие.Не хранить"
  • days
    - количество дней с текущей даты. Письма новее этой даты удаляться не будут.

Пример json: