> 
> Assuming there is only one set of brackets on a line, and you only want the IP 
> address between them, and READLOG is an open handle to your log:
> 
> - Not Tested -
> my @ips;
> while (my $line = <READLOG>) {
>    if ($line =~ /\[(.*)\]/) {
>       push @ips, $1;
>    }
>    else {
>       print STDERR "no ip in line\n";
>    }
> }
> print "@ips\n";
> 

I don't mean to sound stupid, but uhhhh *scratch-scratch* what's a
READLOG open handle? ;-)

I have about 7500+ messages in a spam folder on the mail server (in
Maildir) and I'm trying top parse them out.

Here's my stupid script so far:

#!/usr/bin/perl

@fileList = `ls -1`;
$filecount = "5";

#$makeIPList = `cat @fileList[$filecount]`;
@fileList[$filecount] =~ s/\]/\[/g;
@getIP = `grep Received\: @fileList[$filecount]`;
[EMAIL PROTECTED] =~ s/\]/\[/g;

@split = split (/\[/, $getIP);

print "getIP----  @getIP\n";
print "filelist-  @fileList[filecount]\n";


and here's the output:

getIP----  Received: from 24.60.195.149
(h00a0cce008a4.ne.client2.attbi.com [24.60.195.149])
 Received: from 11.139.74.233 ([11.139.74.233]) by n7.groups.yahoo.com
with NNFMP; May, 17 2003 1:51:07 AM +0700
 Received: from 30.215.79.204 ([30.215.79.204]) by m10.grp.snv.yahoo.com
with SMTP; May, 17 2003 12:44:43 AM -0800

filelist-  1053130715.9788_5.mail2.horvitznewspapers.net,S=15311:

I just set the counter at 5 as a test I will turn that into an
incrementing dealy when I can get it to work.  I'm trying to figure out
how to make a text file with all the IP's that the spam is coming from.



--Bryan


-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to