#!/usr/bin/perl $|++; use strict; my $logpath = $ARGV[0]; my $keyword = $ARGV[1]; $logpath =~ s/\ /\\ /g; my $cmd = "perl ./prep.pl -r \"$keyword\" $logpath*"; open IN, "$cmd|"; my %msgs; my $lines; while () { my ($file,$prot,$me,$user,$y,$m,$d,$t,$from,$msg) = $_ =~ /($logpath(.+?)\.(.+?)\/(.+?)\/.+?\((\d{4})\|(\d{2})\|(\d{2})\)\.adiumLog):\((\d\d:\d\d:\d\d)\)\ (.+?):(.+)$/; $msgs{$y}{$m}{$d}{$t}{$prot}{$me}{$user}{to} = $me eq $from ? $user : $me; $msgs{$y}{$m}{$d}{$t}{$prot}{$me}{$user}{from} = $me eq $from ? $me : $user; $msgs{$y}{$m}{$d}{$t}{$prot}{$me}{$user}{msg} = $msg; $msgs{$y}{$m}{$d}{$t}{$prot}{$me}{$user}{file} = $file; } close IN; $/=undef; print "";