Well, being way down on the perl food chain, i interpreted (mis-interpreted?) this request a little different and offer a simplistic and not entirely correct approach but still i would like to offer it.
It seemed to me that he was looking to split() the line into month | date | time | byte size and sort() the line by month | date, and i kind of stopped there. I though by implying that he was 'learning perl' he was using a log file for 'parsing' practice. And rather than a RE was looking for a built in function of some sort. I have no idea about sorting through a 1GB file, (which is much larger then my whole /var partition) i have no desire to try it on my machine at the moment. This sorts numerically by month and date, (i.e Aug=A is first Dec=D is second, Feb=F is 3rd, etc,etc, but they are grouped together) if you wanted to put the months in the correct order it would be easy enough to load them into a hash as RN suggested,... i've still got the secret decoder ring out for the other hieroglyphics contained in his code, cool,... #!/usr/bin/perl -w #******************************************************************************* #I'm teaching myself Perl and I have a log file around 1GB that I need to sort #by month | date | time | byte size. So far I have parse the log for "bytes" #since this is all that I need but I can't get it to sort like I want. # #Here is the Data I parsed for bytes but now I need to sort by month | date | #time | byte size. #******************************************************************************* use strict; my($month, $date, $time, $byte_size, @all_data, %paired_data, $m_date, $t_byte); my(@m_date, @t_byte, @f_date); my($four, $five, $six, $seven, $eight, $nine, $ten); my $num = 0; while(<DATA>) { if(/^[A-Z]/) { # If line start with a Caps (month) as below, ($month, $date, $time, $four, $five, $six, $seven, $eight, $nine, $ten, $byte_size) = split; $m_date[$num] = $month ." ". $date . " " . $time . " " . $byte_size . "\n"; @f_date = sort @m_date; $num++; } } print @f_date; __DATA__ Aug 3 04:02:02 node qmail: 1028545322.562816 info msg 401391: bytes 4138 from <#@[]> qp 1367 uid 507 Aug 2 04:02:57 node qmail: 1028545377.266421 info msg 401390: bytes 614 from <[EMAIL PROTECTED]> qp 1558 uid 0 Aug 1 04:02:57 node qmail: 1028545377.340607 info msg 401393: bytes 1206 from <> qp 1561 uid 507 Aug 4 04:02:57 node qmail: 1028545377.423885 info msg 401391: bytes 1701 from <#@[]> qp 1564 uid 507 Aug 5 04:02:02 node qmail: 1028545322.562816 info msg 401391: bytes 4138 from <#@[]> qp 1367 uid 507 Aug 9 04:02:57 node qmail: 1028545377.266421 info msg 401390: bytes 614 from <[EMAIL PROTECTED]> qp 1558 uid 0 Aug 7 04:02:57 node qmail: 1028545377.340607 info msg 401393: bytes 1206 from <> qp 1561 uid 507 Aug 8 04:02:57 node qmail: 1028545377.423885 info msg 401391: bytes 1701 from <#@[]> qp 1564 uid 507 Jan 2 04:02:57 node qmail: 1028545377.423885 info msg 401391: bytes 1101 from <#@[]> qp 1564 uid 507 Jul 5 04:02:57 node qmail: 1028545377.423885 info msg 401391: bytes 5701 from <#@[]> qp 1564 uid 507 Jul 3 04:02:57 node qmail: 1028545377.423885 info msg 401391: bytes 101 from <#@[]> qp 1564 uid 507 Jan 21 04:02:57 node qmail: 1028545377.423885 info msg 401391: bytes 701 from <#@[]> qp 1564 uid 507 -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]