if ($exp) {
push @prev, $line;
shift @prev while @prev > $nolines;
- printit(@prev) if $line =~ m{(?:$exp)}oi;
+ if ($line =~ m{(?:$exp)}oi) {
+ printit(@prev);
+ @prev = ();
+ }
} else {
printit($line);
}
{
while (@_) {
my $line = shift;
+ chomp $line;
+ $line =~ s/([\x00-\x1f\x7f-\xff])/sprintf("\\x%02X", ord($1))/eg;
my @line = split '\^', $line;
my $t = shift @line;
my ($sec,$min,$hour) = gmtime((defined $t) ? $t : time);
my $buf = sprintf "%02d:%02d:%02d", $hour, $min, $sec;
- print $buf, ' ', join('^', @line);
+ print $buf, ' ', join('^', @line), "\n";
}
}
exit(0);