Re: Чем почистить почтовую базу от лишних полей заголовков?
От: rising_edge  
Дата: 13.12.20 05:21
Оценка:
Сто лет назад написал такое:

! /bin/sh

EXTRA_HEADERS=" Received: Message:\
 List-Id: List-Archive: List-Post: List-Help: List-Subscribe: List-Unsubscribe:\
 Return-Path: Errors-To: Reply-To: Delivered-To: Mail-Followup-To: Sender:\
 X-Envelope-To: X-BeenThere: X-Real-To:\
 X-Mailman-Version: Precedence: Organization: Status:\
 X-Spam: X-Spam-Level: X-Spam-Status: X-Spam-Checker-Version: X-Bogosity:\
 X-Scanner: X-Virus-Scanned: X-AntiVirus:\
 X-IP: X-Originating-IP:\
 X-Accept-Language:\
 X-From: X-Priority: X-MSMail-Priority: X-MimeOLE:\ 
 X-Enigmail-Version: X-Enigmail-Supports:\ 
 X-OriginalArrivalTime: 
 X-Operating-System: X-Window-System:"


FORMAIL_OPTIONS="-b -Y -f -d -s -e"
FORMAIL_HEADERS="$(echo "$EXTRA_HEADERS" | sed -e 's| | -I |g')"

for m in "$@"
do
        echo "Processing" $m "mailbox..."

        case $m in
            *.Z)        EXT=Z;;
            *.z)        EXT=z;;
            *.gz)       EXT=gz;;
            *.bz2)      EXT=bz2;;
        esac

        case $EXT in
            gz|Z|z)
                MBOX="$(basename $m .$EXT)"
                gunzip $m
                ;;
            bz2)
                MBOX="$(basename $m .bz2)"
                bunzip2 $m
                ;;
            *)
                MBOX="$m"
                ;;
        esac

        cat $MBOX | formail $FORMAIL_HEADERS $FORMAIL_OPTIONS | bzip2 -c > $MBOX.bz2
        rm -f $MBOX

        echo "Done!"
done
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.