IPFW Log question
Matthew Seaman
m.seaman at infracaninophile.co.uk
Fri Jun 20 08:35:20 PDT 2003
On Fri, Jun 20, 2003 at 08:21:52AM -0600, Warren Block wrote:
> On Fri, 20 Jun 2003, Matthew Seaman wrote:
>
> > > Or if anyone has a perl script that tosses out the odd
> > > lines and just keeps the full lines and is willing to
> > > share it, that would work too. Otherwise, I am going
> > > to have to get better at perl in a big way.
> >
> > #!/usr/bin/perl -w
> >
> > $prevline = "";
> >
> > while (<>) {
> > if (m/last message repeated (\d+) times/) {
> > for ( 1 .. $1 ) {
> > print $prevline;
> > }
> > } else {
> > print $_;
> > $prevline = $_;
> > }
> > }
>
> If I read that right, this would also work:
>
> #!/usr/bin/perl -w
>
> while (<>) {
> print $_ unless $_ =~ /last message repeated (\d+) times/;
> }
That's not quite the same thing. You're just taking out the lines
that match /last message repeated \d+ times/ (and constructing a
backreference to \d+ that you never use):
Jun 20 16:26:02 example /kernel: ipfw: 800 Deny TCP 12.34.56.78:1234 21.43.65.87:4321 out via de0
Jun 20 16:26:27 example last message repeated 2 times
becomes:
Jun 20 16:26:02 example /kernel: ipfw: 800 Deny TCP 12.34.56.78:1234 21.43.65.87:4321 out via de0
whereas I'm replacing that line with the correct number of repeats of
the original line, so the example becomes:
Jun 20 16:26:02 example /kernel: ipfw: 800 Deny TCP 12.34.56.78:1234 21.43.65.87:4321 out via de0
Jun 20 16:26:02 example /kernel: ipfw: 800 Deny TCP 12.34.56.78:1234 21.43.65.87:4321 out via de0
Jun 20 16:26:02 example /kernel: ipfw: 800 Deny TCP 12.34.56.78:1234 21.43.65.87:4321 out via de0
Of course, on closer reading, your code is exactly what the OP asked for.
Cheers,
Matthew
--
Dr Matthew J Seaman MA, D.Phil. 26 The Paddocks
Savill Way
PGP: http://www.infracaninophile.co.uk/pgpkey Marlow
Tel: +44 1628 476614 Bucks., SL7 1TH UK
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-questions/attachments/20030620/334eea92/attachment.bin
More information about the freebsd-questions
mailing list