Domanda

Sto usando getmail + maildrop + mutt + msmtp chain con i messaggi archiviati in Maildir.La posta in arrivo molto grande mi dà fastidio, quindi volevo organizzare la posta per data in questo modo:

Maildir
|-2010.11->all messages with "Date: *, * Nov 2010 *"
|-2010.12->same as above...
|-2011.01
`-2011.02

Ho cercato su Google molto e letto del linguaggio del filtro di posta, ma è ancora difficile per me scrivere un filtro del genere.Gli archivi della mailing list di Maildrop non hanno quasi nulla su questo (per quanto l'ho scansionato).C'è qualche semi-soluzione su https://unix.stackexchange.com / questions / 3092 / organizza-email-per-data-usando-procmail-o-maildrop , ma non mi piace, perché voglio usare l'intestazione "Data:" e voglio ordinareper mese come "YEAR.MONTH" in cifre. Qualsiasi aiuto, pensiero, link, materiale sarà apprezzato.

È stato utile?

Soluzione

Utilizzando principalmente pagine man, ho trovato la seguente soluzione da utilizzare su Ubuntu 10.04.Crea un file mailfilter chiamato, ad esempio, mailfilter-archive con il seguente contenuto:

DEFAULT="$HOME/mail-archive"
MAILDIR="$DEFAULT"

# Uncomment the following to get logging output
#logfile $HOME/tmp/maildrop-archive.log

# Create maildir folder if it does not exist
`[ -d $DEFAULT ] || maildirmake $DEFAULT`

if (/^date:\s+(.+)$/)
{
    datefile=`date -d "$MATCH1" +%Y-%m`
    to $DEFAULT/$datefile
}

# In case the message is missing a date header, send it to a default mail file
to $DEFAULT/inbox

Questo utilizza il comando date, prendendo come input il contenuto dell'intestazione date (supponendo che sia in RFC-Formato 2822 ) e producendo una data formattata da utilizzare come nome del file di posta.

Quindi esegui quanto segue sui file di posta esistenti per archiviare i tuoi messaggi:

cat mail1 mail2 mail3 mail4 | reformail -s maildrop mailfilter-archive

Se il contenuto di mail-archive ha un bell'aspetto, è possibile rimuovere i file di posta mail1, mail2, mail3, mail4 e così via.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top