use strict; use File::Find; my @files; find sub { push @files, $File::Find::name if -f _ && /\.pm$/ }, @INC; my ($mod, $hash, $name); my (@results, %hash, @results2); @results = map {/.+\/.+\/(.*).pm$/} @files; $hash{$_}++ foreach (@results); foreach (sort keys %hash) { print "$_.pm \n"; }