Skip to content

Postfix: Mails komfortabel löschen

Das folgende Skript löscht alle E-Mails aus der Mailwarteschlange, die dem als erstes Argument angegebenen regulären Ausdruck entsprechen:

$REGEXP = shift || die "no email-adress given (regexp-style, e.g. bl.*!";
@data = qx;
for (@data) {
  if (/^(\w+)(*|\!)?\s/) {
     $queue_id = $1;
  if($queue_id) {
    if (/$REGEXP/i) {
      $Q{$queue_id} = 1;
      $queue_id = "";
#open(POSTSUPER,"|cat") || die "couldn't open postsuper" ;
open(POSTSUPER,"|postsuper -d -") || die "couldn't open postsuper" ;
foreach (keys %Q) {
  print POSTSUPER "$_\n";

Im folgenden Beispiel löscht man alle Nachrichten in der Warteschlange von oder zu der Domain "":
Im folgenden Beispiel löscht man alle Nachrichten in der Warteschlange, die das Wort "xyz" in der E-Mail-Adresse enthalten:
./ xyz
Credits: nixcraft


No Trackbacks


Display comments as Linear | Threaded

No comments

Add Comment

E-Mail addresses will not be displayed and will only be used for E-Mail notifications.
To leave a comment you must approve it via e-mail, which will be sent to your address after submission.
Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
BBCode format allowed
Form options

Submitted comments will be subject to moderation before being displayed.