Great Circle Associates Majordomo-Users
(June 2001)
 

Indexed By Date: [Previous] [Next] Indexed By Thread: [Previous] [Next]

Subject: Sorting addresses by domain
From: "Anderson, Bill" <wander01 @ mail . state . mo . us>
Date: Thu, 21 Jun 2001 09:36:33 -0500
To: "'Majordomo Users'" <Majordomo-users @ GreatCircle . COM>

The recent discussions on how to improve majordomo/sendmail performance by
sorting the list files by domain prompted me to try to do this for my own
lists. Finding no script to do this already written, I put together the
following perl script to do the sorting. The directory the list files are in
is defined in the chdir function in the script. The script assumes the list
files are the only files in the directory _without_ a period in the name.

#! /usr/bin/perl

chdir "/var/lib/majordomo/lists/testdir";
@listnames = `ls`;
@lists = grep (!/\./, @listnames);
unlink 'lists.out';

for my $list (@lists)
   {
      chomp $list;
      open LISTFILE, $list;
      print $list."\n";
      @fileaddresses = ();

      while (<LISTFILE>)
      {
         chomp;
         ($account, $host) = split (/\@/,  $_); 
         push @fileaddresses, lc($host)."@".lc($account)."\n";
      }

      @sortedaddresses = sort @fileaddresses;
      open OUTFILE, ">>sortedlist.out";

      for my $sortedaddress (@sortedaddresses)
      {
         chomp $sortedaddress;
         ($sortedhost, $sorteddest) = split (/\@/, $sortedaddress);
         print OUTFILE $sorteddest."@".$sortedhost."\n";
      }
      close OUTFILE;

      `mv sortedlist.out $list`;
      unlink "sortedlist.out"; 
   }

All comments/suggested improvements are welcome.

Bill Anderson
MIS Network Administrator
MO Dept of Economic Development




Follow-Ups:
Indexed By Date Previous: Debug mode
From: John Poltorak <jp@eyup.org>
Next: Re: Message duplication problem
From: Kirk Ismay <captain@netidea.com>
Indexed By Thread Previous: Re: Debug mode
From: John Poltorak <jp@eyup.org>
Next: Re: Sorting addresses by domain
From: jacks@sage-american.com

Google
 
Search Internet Search www.greatcircle.com