Come convertire le e-mail Exim scaricate tramite FTP in modo che possano essere importate in un client di posta elettronica?


0

Ho cartelle di backup di e-mail che ho scaricato da un vecchio server che esegue Exim. Posso aprire tutti i file in un editor di testo e leggere i contenuti e sono in formato RFC 822 standard.

I nomi dei file si presentano così:

1284775865.H451571P15783.pre.press-themes.com,S=840363/2,S

Alla fine ho bisogno di importarli in un account Google Apps. È un account gratuito, quindi non posso usare il metodo API delle app python che funzionerebbe se aggiungessi un'estensione di file .txt. Google ha Mac Email Uploader ma richiede che l'email sia in uno dei seguenti modi:

  • Apple Mail: ~ / Library / Mail
  • Eudora: ~ / Cartella Eudora -Thunderbird: ~ / Library / Thunderbird

Quando provo a importare i messaggi in Apple Mail o Thunderbird, questi non vengono riconosciuti. Ho provato ad aggiungere un'estensione di file .mbox e un'estensione di file .txt. Ho anche eseguito questo script bash ma li ha convertiti tutti in un grande file con estensione .mbox che non può essere letto da nessuno dei client.

#!/bin/bash
if [ $# == 0 ]; then
echo usage ${0##*/} FolderName
exit 0
fi

for file in `find "$1" -type f`; do
   mbx="${file%/*}.mbox"
   mbx="${mbx//\//_}"
   cat "$file" | formail >> "$mbx"
    done

1
Assomiglia ai nomi di file standard di Maildir: potresti installare un server pop come Dovecot, rilasciare i file nella tua cartella Maildir / nuova e quindi puntare le app di Google a questo (temporaneo) server di posta per prendere le e-mail?
Barryj,

Risposte:


1

Secondo la pagina a cui ti sei collegato,

Google Email Uploader per Mac è un'utilità desktop per Mac OS X che carica archivi di posta elettronica da Apple Mail, Eudora, Thunderbird e posta Entourage esportata (insieme ad altri archivi mbox e Maildir) nella tua casella di posta Google Apps.

Quello che hai è Maildir , ma dal tuo esempio dato sembra che i nomi siano stati alterati durante il trasferimento: il 2,Ssuffisso dovrebbe essere separato da un :(o ;in alcuni sistemi), non da /.

L'output del tuo script di conversione mbox dovrebbe essere accettato direttamente anche da Uploader.

dir="${1%/}"
mbox="$dir.mbox"
find "$dir" -type f | while read name; do
    formail < "$name" >> "$mbox"
done

Ha funzionato aggiungendo l'intera cartella Maildir che includeva tutte le cassette postali.
Chris_O
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.