Jak se rozlisi jednotlive maily v mailboxu?
Jan Kybic
kybic na circhp.epfl.ch.epfl.ch
Pondělí Říjen 13 14:12:15 CEST 1997
> Dotaz je mozna hloupy, ale snazil jsem se a nikde nenasel
> odpoved (a nechce se mi prohlize zdrojaky elmu). Jak poznam
> mailboxu, kde konci jeden mail a zacina dalsi? Podle
> 'From' radku hlavicky to byt nemuze, co kdyby neco takoveho
> bylo uprostred mailu?
Doporucuji podivat se na program 'formail' z baliku 'procmail'. Pokud
ten respektuje zavedene konvence, pak je to zhruba takto (symbolicky):
<mailbox> = empty | <message> <mailbox>
<message> = <head> <empty_line> <body> <empty_line>
<head> = "From: " [^\n]* \n <lines>
<lines> = empty | <line> <lines>
<line> = [^\n]* \n
<body> = <lines>
<empty_line> = \n
Tedy zprava zacina radkou na jejimz zacatku je "From: " a pred niz je
bud nic, nebo prazdny radek.
Krome toho pokud hlavicka obsahuje radek "Content-Length: xxx", pak
formail preskoci presne tolik byte a pak zacne znova hledat "From: ".
Za presnost nerucim, ale uz jsem to jednou pouzil (potreboval jsem z
Unixoveho mailboxu vytahat zpravy po jedne) a chodilo to. Zdrojaky tu
ovsem nemam.
Honza
--
-------------------------------------------------------------------------
Jan Kybic <xkybic na sun.felk.cvut.cz> (Muzete psat i s diakritikou)
http://cmp.felk.cvut.cz/~kybic/ tel. 42-2-301 88 26
For PGP key finger kybic na fu.felk.cvut.cz or see my WWW page.
Další informace o konferenci Linux