#!perl use strict; use warnings; my ($mdate,$mts) = @ARGV; my $recent = (map { join "-", @{$_}[0..2] . " " . join ":", @{$_}[3..5] } sort { $a->[0] <=> $b->[0] || $a->[1] <=> $b->[1] || $a->[2] <=> $b->[2] } map { [ split "[-: ]" ] } ($mdate,$mts))[0]; print $recent; #### david@eriador ~ $ ./comparer.pl "2006-01-01 12:00:05" "2007-01-02 12:00:00" 01 12:00:05