|Syntactic Confectionery Delight|
Sorry, I (wrongly) assumed you were an advanced Perl monk. I'll explain my solution step by step:
(NB: note the added path, I forgot that in my original answer!)
You should read this from right to left: each line of the output of the ls command is split and a map is created of each second element (ie. the user names). The array returned by map is sorted and assigned to @temp.
The array @temp now contains all authors of the files in your directory, including doubles!
This will loop through @temp and make a hash with the author names as key. The value is only stored if it doesn't exists already and has a length of > 0.
I do this to ensure the hash only contains unique names.
This loops through the keys of the hash %authors and prints them. To get an array of the unique authors of the files in your directory you would do something like my @unique_authors = keys %authors;
Hope this helps,
"A chicken is an egg's way of producing more eggs."