Re: [Evolution] How to save only the plain text part of multiple emails.




I have a bunch of plain text emails which I would like to save. The
problem is that I only want the plain text part of the emails. Using
'Save as...' saves the other parts as well, like header, signature.

Then I found 'Actions/Save attachments...' with which one can save
different parts of a mail. But this only works for one mail at a time
and I have a lot.

Is there some way to save only the plain text part of multiple emails at
once?

As partha already said, there is none.

If not, how would it be possible to remove everything else from a
saved message (headers...) except the text part, as I don't seem to find
any mark separating the parts?

Well, have a closer look at the mails and maybe the appropriate RFCs.

If you got one mail at a time, these hints will help you:

* Multiple MIME parts of a mail are indeed seperated with a special
  mark. MIME headers like this do mention the boundaries:

  Content-Type: multipart/alternative; boundary="=-2gZ1roA/HoYrlRDVGyiM"

* Getting rid of the header of a mail is easy, as the header is
  separated from the body by an empty line. It's the first empty line in
  the raw mail.

* Languages like Perl do have a bunch of modules, that know MIME. So you
  can use them to split the mail in parts and grab th ones you want
  only.


If you happen to have a file with multiple mails in it, tools like
formail and procmail will help you splitting them for shell scripting.
If you're going to use a different programming language, there most
likely are modules that can deal with this as well.

HTH

...guenther


-- 
char *t="\10pse\0r\0dtu\0  ghno\x4e\xc8\x79\xf4\xab\x51\x8a\x10\xf4\xf4\xc4";
main(){ char h,m=h=*t++,*x=t+2*h,c,i,l=*x,s=0; for (i=0;i<l;i++){ i%8? c<<=1:
(c=*++x); c&128 && (s+=h); if (!(h>>=1)||!t[s+h]){ putchar(t[s]);h=m;s=0; }}}




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]