#!/usr/bin/perl -w use strict; use Date::Manip; my $now=ParseDate(scalar(localtime())); my $hours_ago = DateCalc("12 hours ago",$now); while (my $line=){ chomp $line; my ($timestamp,$metric,$serial,$source,$stuff,$foo,$status,$passfail) = split(/[\s\t\n]+/,$line); next unless $passfail eq '*PASS*'; my $date = ParseDate($timestamp); my $flag=Date_Cmp($hours_ago,$date); if ( $flag < 0 ) { printf "%s\n",$line; } } exit(0); __END__ 2005-11-04/08:02:14.011 METRIC 00020036-0800093A log :Monitor: CALLER Status *PASS* 2005-11-04/08:11:30.924 METRIC 00020036-08000940 log :Monitor: CALLER Status *PASS* 2005-11-04/08:12:29.830 METRIC 00020036-08000941 log :Monitor: CALLER Status *PASS* 2005-11-04/09:12:28.790 METRIC 00020036-08000943 log :Monitor: CALLER Status *PASS* 2005-11-04/09:12:35.869 METRIC 00020036-08000944 log :Monitor: CALLER Status *PASS*