The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.




$ minidomo -list [listfile] -message [msgfile] -limit [integer] -hostsplit -mailhost [hostname] -mailfrom [address] -ok


Minidomo is an example program that uses the Mail::AddressSort module to sort a list of email addresses, and the Net::SMTP module to connect to a mail server to send a message out to those addresses in batches.

It is useful for sending out a single message to a large number mailing list because it can break down the list of addresses into smaller batches like "bulksend".


-list [listfile]

A file containing a list of email addresses. It expects one address on each line, with each address occuring at the start of the line. Whitespace and other characters after the address are thrown out. Lines starting with a pound sign are ignored.

-message [msgfile]

A file containing a full email message (with headers). No editing is performed to the message, it is simply passed in full after the DATA SMTP command.

-limit [integer]

The maximum number of recipients for each message batch.


Indicates that each batch should only contain addresses that are addressed to the same mail host. Each batch will still be limited in size to the number of recipients specified by the -limit parameter.

-mailhost [hostname]

What remote mail server to connect to. Defaults to "localhost".

-mailfrom [address]

What email address to pass to the "MAIL FROM" SMTP command. Defaults to the username and hostname of the machine as defined in the environmental variables.


Confirmation flag. Without this flag, minidomo only goes through the motions of addressing the messages, and connecting to the remote server, but it does not send the messages.