Существует ли лучший инструмент, чем посткошка для просмотра постфиксных файлов почтовой очереди?

Таким образом, я получил вызов рано этим утром о клиенте, бывшем должном видеть, какую электронную почту у них есть ожидание, которое будет поставлено, находясь в нашем вторичном почтовом сервере. Их ссылка для основного сервера имела (все еще), сниженный в течение двух дней, и они должны были видеть свою электронную почту.

Таким образом, я описал быстрый сценарий Perl для использования mailq в сочетании с посткошкой для дампа каждой электронной почты для их адреса в отдельные файлы, tar'd это и отослал его. Ужасный код, я знаю, но это было срочно.

Мое решение работает хорошо, в котором оно, по крайней мере, высказывает необработанное мнение, но я думал сегодня вечером, что было бы хорошо, если бы у меня было решение, где я мог предоставить их почтовые вложения и возможно удалить некоторый текст заголовка "мусора" также. Большинство важных электронных писем, кажется, имеет PDF или подобный присоединенный.

Я озирался, но единственный метод просмотра файлов очереди, которые я вижу, является командой посткошки, и я действительно не хочу писать свой собственный синтаксический анализатор - таким образом, я задавался вопросом, сделал ли какой-либо из Вас уже так или знает о лучшей команде для использования?

Вот код для моего текущего решения:

#!/usr/bin/perl

$qCmd="mailq | grep -B 2 \"someemailaddress@isp\" | cut -d \" \" -f 1";

@data = split(/\n/, `$qCmd`);
$i = 0;

foreach $line (@data)
{
    $i++;

    $remainder = $i % 2;
    if ($remainder == 0)
    {
            next;
    }

    if ($line =~ /\(/ || $line =~ /\n/ || $line eq "")
    {
        next;
    }
    print "Processing: " . $line . "\n";
    `postcat -q $line > $line.email.txt`;
    $subject=`cat $line.email.txt | grep "Subject:"`;
    #print "SUB" . $subject;
    #`cat $line.email.txt > \"$subject.$line.email.txt\"`;
}

Любой совет ценится.

8
задан brian d foy 2 May 2010 в 19:54
поделиться