.P
The summary shows only the per-domain mailbox count, while the
detailed report shows both the count and a list of mailboxes.
+.SH DESCRIPTION
+.P
+Mailbox-count produces a simple count of mailboxes that exist per-domain in some SQL database. The user supplies the...
.SH OPTIONS
+.IP \fB\-\-database\fR
+The name of the database (or file, if SQLite) to which we should
+connect.
+
+Default: The name of the current user (Postgres only).
+
.IP \fB\-\-detail\fR,\ \fB-d\fR
Produce a detailed report listing all mailboxes by domain.
+.IP \fB\-\-detail-query\fR
+SQL query used to produce the detail report. This should return the
+set of all (domain, username) pairs. See the default value for an
+example.
+
+Default: \(dqSELECT domain,username FROM mailbox ORDER BY domain;\(dq
+
+.IP \fB\-\-hostname\fR
+Hostname where the database is located (Postgres-only).
+
+Default: None, a UNIX domain socket connection is attempted (Postgres only)
+
+.IP \fB\-\-password\fR
+Password used to connect to the database (Postgres-only).
+
+Default: None (assumes passwordless authentication)
+
+.IP \fB\-\-port\fR
+Port number used to connect to the database (Postgres-only).
+
+Default: None, a UNIX domain socket connection is attempted (Postgres only)
+
+.IP \fB\-\-summary-query\fR
+SQL query used to produce the summary report. This should return
+(domain, user count) pairs. See the default value for an
+example.
+
+Default: \(dqSELECT domain,COUNT(username) FROM mailbox GROUP BY domain ORDER BY domain;\(dq
+
+.IP \fB\-\-username\fR
+Username used to connect to the database (Postgres-only).
+
+Default: The current user
+
+.SH EXAMPLES
+
+.IP \[bu] 2
+The default summary report:
+
+.nf
+.I $ mailbox-count postfixadmin.sqlite3
+Summary (number of mailboxes per domain)
+----------------------------------------
+example.com: 3
+example.invalid: 1
+example.net: 2
+example.org: 1
+.fi
+.IP \[bu]
+The more detailed report:
+
+.nf
+.I $ mailbox-count --detail postfixadmin.sqlite3
+Detail (list of all mailboxes by domain)
+----------------------------------------
+example.com (3):
+ user1
+ user3
+ user5
+
+example.invalid (1):
+ user7
+
+example.net (2):
+ user2
+ user4
+
+example.org (1):
+ user6
+.fi
.SH BUGS
.P
Send bugs to michael@orlitzky.com.