Spitting a Mailbox into separate files with formail
James Wilkinson
fedora at westexe.demon.co.uk
Thu Sep 22 12:11:45 UTC 2005
Vidol Loeung wrote:
> A long time ago, I used to be able to split a mailbox into separate text
> files with this command:
>
> cat $MAIL | formail -ds 'sh -c cat > msg.$FILENO'
>
> Now, when I tried it again on Fedora, it did not work.
>
> Could you please help me?
May I suggest that you're more likely to get responses if you give us a
bit more detail than "it didn't work"? In this case, if you had included
the error messages
/bin/sh: sh -c cat > msg.$FILENO: No such file or directory
/bin/sh: sh -c cat > msg.$FILENO: No such file or directory
(etc.)
you're more likely to get someone telling you that means formail is
looking for a file named "sh -c cat > msg.$FILENO", not trying to pass
the options "-c cat > msg.$FILENO" to the command "sh".
This isn't surprising: man formail says:
-s has to be the last option specified, the first argument following
it is expected to be the name of a program, any other arguments will
be passed along to it.
And the program you're trying to use is called sh.
So
cat $MAIL | formail -ds sh -c 'cat > msg.$FILENO'
should do what you want.
Incidentally,
< $MAIL formail -ds sh -c 'cat > msg.$FILENO'
or
formail -ds sh -c 'cat > msg.$FILENO' < $MAIL
is considered better style, since it saves on a "cat" process. Google
UUOC for more details.
Hope this helps,
James.
--
E-mail address: james | It's fair enough for a surgeon to refuse to operate on
@westexe.demon.co.uk | someone who won't stop smoking: you've got to give the
| anaesthetist a chance to get in there.
| -- "Jeremy Hardy Speaks to the Nation", BBC Radio 4
More information about the fedora-list
mailing list