On Wed, Oct 08, 2008 at 11:12:27PM +0400, Lebedev Dmitriy wrote:
> 1) Насколько правильно (и безопасно) удалять письма в этой папке
> просто как файлы при помощи шелл-команды типа
> find /var/CommuniGate/Accounts/spam.mdir -mtime +30 -type f -exec rm -rf {} \;
> (удаление писем в папке, старше одного месяца)?
> В логах вижу, что CGP корректирует размер этой папки при обращении к ней по POP3. Это не страшно, можно использовать такую команду "в промышленных масштабах" в течение долгого периода? Или это неправильно?
Судя по знакомству с командой find и форматированию абзацев в одну строку,
для автора не составит труда разобраться с классом Mail::IMAPClient и
написать скрипт, который по IMAP удаляет нужные письма, например, так:
my $imap = Mail::IMAPClient->new(Server => $Server,
User => $Login, Password => $Password);
if($imap->select($f)) {
my @old_list = $imap->before(time() - 30*3600); if(@old_list > 0) { if($imap->delete_message(\@old_list)) { if($imap->expunge($f)) { ...
Обработку ошибок, статистику и т.п. добавлять по вкусу. В конце сказать $imap->logout(); Список ящиков можно получить через CLI или проходом по файловой системе.
ANDY Получено Wed Oct 08 19:46:26 2008
Этот архив был сгенерирован hypermail 2.1.8 : Thu 09 Oct 2008 - 00:14:07 MSD