procmail
[Top] [All Lists]

formail -ds or -s

1996-08-03 11:19:27
Era Eriksson understood that Steve Hill didn't really want the -d option
(either Mr. Eriksson was able to decode Mr. Hill's base64-encoded sample and
see what I could not, or he just got Mr. Hill's meaning where I could not)
and suggested,

| > That's formail -s

Mr. Hill expressed his gratitude:

| Thanks, Era!  That solved the problem.  My reading of the formail man
| pages led me to believe that the -d option was required, in order to
| split the file into separate messages.

Ah; now I understand.  Mr. Hill must have been working with a folder that
contained both single-part messages and messages containing digests, and he
wanted the messages separated from one another without the digests' being
burst further into their component articles.  I had had the impression that
the input to formail was one message, which contained a digest, and it wasn't
clear whether Mr. Hill wanted it burst or not.

I find it helps to think of `s' for "split" and `d' for "digest".  -s will
split only where it finds "From " after an empty line (-es will split at
"From " at the start of a line without requiring a blank line before it) ...
and even then it won't split if "From " is protected by a Content-Length:
value (unless you use the -Y option to tell formail to ignore Content-Length:
headers).  -ds does not require "From " because it is designed to separate
digest articles from one another as well as full-fledged messages from one
another; -ds will also split wherever it finds a clump of RFC822 headers
embedded in the body of a message.

<Prev in Thread] Current Thread [Next in Thread>