.\" Automatically generated by Pod::Man 4.11 (Pod::Simple 3.35) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "PMAILQ 8" .TH PMAILQ 8 "" "" "" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" pmailq \- Postfix Mail Queue manager .SH "SYNOPSIS" .IX Header "SYNOPSIS" pmailq [\fI\s-1OPTION\s0\fR]... [\fI\s-1COMMAND\s0\fR] .PP pmailq \fB\-\-help\fR .SH "DESCRIPTION" .IX Header "DESCRIPTION" pmailq processes the output of the Postfix mailq command, and can list, parse (machine-readably), or delete queued messages in batches. .PP They can be selected by size, by queue status, and by pattern matching (with wildcards) on recipient addresses and server error messages. .SH "COMMANDS" .IX Header "COMMANDS" Action to perform on selected entries. .IP "\fBlist\fR (default command)" 2 .IX Item "list (default command)" Show (via \fIpostqueue \-p\fR) a detailed listing of the selected entries. .IP "\fBparse\fR" 2 .IX Item "parse" Show a listing of the selected entries in a machine readable format. .IP "\fBdel\fR" 2 .IX Item "del" Delete (via \fIpostsuper \-d\fR) the selected entries. .SH "OPTIONS" .IX Header "OPTIONS" .IP "\fB\-e\fR \fI\s-1PATTERN\s0\fR, \fB\-\-email\fR=\fI\s-1PATTERN\s0\fR" 2 .IX Item "-e PATTERN, --email=PATTERN" Select entries in queue with email matching \s-1PATTERN\s0 (\s-1PATTERN\s0 accepts wildcards). .IP "\fB\-m\fR \fI\s-1PATTERN\s0\fR, \fB\-\-msg\fR=\fI\s-1PATTERN\s0\fR" 2 .IX Item "-m PATTERN, --msg=PATTERN" Select entries in queue with error message matching \s-1PATTERN\s0 (\s-1PATTERN\s0 accepts wildcards). .IP "\fB\-l\fR \fI\s-1SIZE\s0\fR, \fB\-\-size\-lower\fR=\fI\s-1SIZE\s0\fR" 2 .IX Item "-l SIZE, --size-lower=SIZE" Select entries in queue with size lower than \s-1SIZE\s0 bytes. .IP "\fB\-u\fR \fI\s-1SIZE\s0\fR, \fB\-\-size\-upper\fR=\fI\s-1SIZE\s0\fR" 2 .IX Item "-u SIZE, --size-upper=SIZE" Select entries in queue with size upper than \s-1SIZE\s0 bytes. .IP "\fB\-a\fR" 2 .IX Item "-a" Select 'active' entries in queue. .IP "\fB\-o\fR" 2 .IX Item "-o" Select 'on hold' entries in queue. .IP "\fB\-\-version\fR" 2 .IX Item "--version" Show program's version number and exit. .IP "\fB\-h\fR, \fB\-\-help\fR" 2 .IX Item "-h, --help" Show this help message and exit. .SH "EXAMPLES" .IX Header "EXAMPLES" .RS 1 Example 1: display all the entries in queue sent to an email address matching \&\*(L"*@example.com*\*(R" with a size between 3000 and 3200 bytes in a machine readable format: .Sp .Vb 1 \& # pmailq \-u 3000 \-l 3200 \-e "*@example.com" parse \& \& 7E75214643A4|Fri Aug 31|3154|1|0|edgar@example.com \& B0BDE146B640|Thu Aug 30|3199|1|0|paul@example.com \& B587E146B675|Wed Aug 29|3065|0|0|paul@example.com \& CF3C514656E4|Wed Aug 29|3161|0|0|abuse@example.com \& /\e /\e /\e \e \e \& queue id date size \e \e on hold (or not) \& \e active (or not) .Ve .Sp Example 2: remove all mails in queue not sent because of a connection time out: .Sp .Vb 1 \& # pmailq \-m "*connection*timed*out" del \& \& deleting 00CF514616D3 [OK] \& deleting 12D911461924 [OK] \& deleting 269EF1461CA9 [OK] \& deleting 288DF1461CA0 [OK] \& deleting 3B3901460F62 [OK] \& deleting 3AE58147019F [OK] .Ve .RE .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fBpostsuper\fR\|(1) privileged queue operations, \fBpostqueue\fR\|(1) mail queue control .SH "AUTHOR" .IX Header "AUTHOR" Emmanuel Bouthenot .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" Copyright 2007\-2011 by Emmanuel Bouthenot .PP This program is released under the \*(L"do What The Fuck you want to Public Licence\*(R" Version 2, as published by Sam Hocevar. .PP See http://sam.zoy.org/wtfpl/COPYING for more details.