#!/usr/local/bin/perl -w @data = ( "aix-dev,active,aixr03,aixr03,crmd,FULL,12345,Sunday,018:00:00", "w2k-prod,active,w2k-PROD,pub1hi,prod-web-srv1Y,FULL,3,Friday,021:00:00", "w2k-prod,active,w2k-PROD,pol02pi,prod-web-srv1,CINC,,Monday,009:00:00", "w2k-prod,active,w2k-PROD,pub01pi,prod-web-srv1,CINC,,Monday,023:00:000", "aix-dev-ecmd2,active,aixr03,aixr03,ecmD2,FULL,12345,Monday,001:00:00", "aix-prod-artp,active,aixr04,aixr04,artp-rman,FULL,2345,Sunday,021:30:00", "w2k-prod,active,w2k-PROD,pol02pi,prod-web-srv1Y,FULL,3,Friday,023:00:00", "w2k-prod,active,w2k-PROD,pub01pi,prod-web-srv1Y,FULL,3,Friday,021:00:00" ) ; $count=@data ; print "debug-->data has $count lines \n" ; foreach $line (@data) { chomp $line ; print "$line \n" ; } # Sort on Weekday, time and policy @out1 = sort { @a = (split ',', $a) ; @b = (split ',', $b) ; $a[7] cmp $b[7] || $a[8] cmp $b[8] || $a[0] cmp $b[0] } @data ; $count=@out1 ; print "debug-->out1 has $count lines \n" ; foreach $line (@out1) { chomp $line ; print "$line \n" ; }