You are hereinternet / email / mailserver / dovecot
dovecot
mu - maildir utils
Ik zag deze tweet passeren van @DriesBultynck:
zoekt nog steeds een manier om een reeks mails uit gmail te exporteren naar excel (incl. date + content). Niemand?
Volgens @haploc zou dat wel moeten lukken met Perl, Email::Simple en Spreadsheet::SimpleExcel. Aangezien ik niet zo vlot ben met Perl, heb ik een andere oplossing gezocht en gevonden: mu (kort voor Maildir Utils).
Helaas heeft mu geen kant-en-klaar pakket voor Debian dus moet het van source geïnstalleerd worden.
wget http://mu0.googlecode.com/files/mu-0.9.7.tar.gz
tar -xvf mu-0.9.7.tar.gz
cd mu-0.9.7
Op mijn systeem ontbraken nog een paar dependencies, met een paar keer ./configure te draaien heb ik ze kunnen achterhalen:
Daarna mu configureren:
Als alles goed gegaan is, dan krijg je op het einde ongeveer zo'n output:
-----------------------------
Xapian version : xapian-config - xapian-core 1.2.3
GLib version : 2.24.2
GMime version : 2.4.14
GTK+ version : 2.20.1
GIO version : 2.24.2
Guile version : 1.8.7
Build unit tests (glib >= 2.22) : yes
Build 'mug' toy-ui (requires GTK+) : yes
McCabe's Cyclomatic Complexity tool : yes
xdg-open : /usr/bin/xdg-open
Have direntry->d_ino : yes
Have direntry->d_type : yes
-----------------------------
Daarna builden en installeren:
sudo make install
cd
Klaar? Bijna. mu werkt door een maildir te indexeren als een database, waar je dan queries op kan loslaten. Voor het indexeren gaat mu uit van een aantal zinnige defaults dus het is niet meer dan:
Afhankelijk van de grootte van de maildir kan dit even duren. Alhoewel. Bij mij viel het nog best mee:
mu: indexing messages under /home/amedee/Maildir [/home/amedee/.mu/xapian]
/ processing mail; processed: 69736; updated/new: 69736, cleaned-up: 0
mu: elapsed: 210 second(s), ~ 332 msg/s
mu: cleaning up messages [/home/amedee/.mu/xapian]
\ processing mail; processed: 69736; updated/new: 0, cleaned-up: 0
mu: elapsed: 2 second(s), ~ 34868 msg/s
real 3m32.500s
user 1m21.021s
sys 0m7.692s
Als je mu regelmatig gebruikt, dan is misschien geen slecht idee om mu index toe te voegen als cron job.
Nu mu geïnstalleerd is, kan je queries draaien zoals
Dit geeft bij mij als output:
<messages>
<message>
<from>1T3XT BVBA <info [at] 1t3xt [dot] info></from>
<to>Post all your questions about iText here <itext-questions [at] lists [dot] sourceforge [dot] net></to>
<subject>Re: [iText-questions] Adding watermark in front of the page background color</subject>
<date>1323524095</date>
<size>7149</size>
<msgid>4EE35FFF [dot] 6070006 [at] 1t3xt [dot] info</msgid>
<path>/home/amedee/Maildir/.mailinglijst.itext-questions/cur/1323524308.25506_3.intrepid:2,</path>
<maildir>/.mailinglijst.itext-questions</maildir>
</message>
<message>
<from>Balder VC <lists [at] redlab [dot] be></from>
<to>itext-questions [at] lists [dot] sourceforge [dot] net</to>
<subject>Re: [iText-questions] XMLWorker & RTL</subject>
<date>1323524276</date>
<size>7769</size>
<msgid>4EE360B4 [dot] 8040008 [at] redlab [dot] be</msgid>
<path>/home/amedee/Maildir/.mailinglijst.itext-questions/cur/1323524480.9255_3.intrepid:2,</path>
<maildir>/.mailinglijst.itext-questions</maildir>
</message>
<message>
<from>Balder VC <lists [at] redlab [dot] be></from>
<to>Post all your questions about iText here <itext-questions [at] lists [dot] sourceforge [dot] net></to>
<subject>[iText-questions] Fwd: Re: XMLWorker & RTL</subject>
<date>1323525006</date>
<size>19787</size>
<msgid>4EE3638E [dot] 7020708 [at] redlab [dot] be</msgid>
<path>/home/amedee/Maildir/.mailinglijst.itext-questions/cur/1323525223.17054_3.intrepid:2,</path>
<maildir>/.mailinglijst.itext-questions</maildir>
</message>
</messages>
Meer voorbeelden van queries zijn te vinden op de mu cheatsheet.
Nu is het gewoon nog een kwestie van:
- Een lokale IMAP-server installeren die Gmail binnentrekt (zelf ben ik nogal fan van Dovecot)
- De gepaste query verzinnen, met XML output.
- De XML-file binnentrekken in een spreadsheetprogramma.
Voila, dit is één mogelijke oplossing.
Mbox mailboxen omzetten naar Maildir
Ik gebruik Dovecot met maildir, en heel af en toe moet ik eens een mbox-bestand herverwerken zodat de mail op de juiste plaats beland:
formail -b -s procmail -m ~/.procmailrc < $mailfile
waarbij $mailfile in mbox-formaat is.
Meer info hier.
intrepid²: mailserver
http://www.debianadmin.com/debian-mail-server-setup-with-postfix-dovecot...
http://www.linuxmail.info/postfix-smtp-auth-dovecot-sasl/
sudo /etc/init.d/apache2 reload