#!/usr/local/bin/perl -w use strict; my ( @temp, %authors ); @temp = sort map { my @b=split; $b[2]; } `ls -l /directory/pth/here`; foreach ( @temp ) { $authors{$_}=1 if not $authors{$_} and length $_; #I had to add $_ because the other way "$authors{$}=1" gave me an error } print "$_\n" for keys %authors;