Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl-Sensitive Sunglasses

Re: Module installed Path

by vrk (Chaplain)
on Mar 06, 2007 at 08:44 UTC ( #603364=note: print w/replies, xml ) Need Help??

in reply to Module installed Path

I don't know if there's an official way, but here's what I could whip together:

sub find_installed_path { my $module_name = shift; # For Unix systems: $module_name =~ s!::!/!g; # For Windows: #$module_name =~ s!::!\\!g; $module_name .= '.pm'; foreach my $path (@INC) { next if (ref $path); return "$path/$module_name" if (-f "$path/$module_name"); } return ''; } print find_installed_path('File::Find');

YMMV, but works with Linux and Perl 5.8.8.

UPDATE: @INC may contain references (to subroutines, blessed objects, etc.), so added a check right at the beginning of the foreach loop.

print "Just Another Perl Adept\n";

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://603364]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (9)
As of 2017-07-24 11:55 GMT
Find Nodes?
    Voting Booth?
    I came, I saw, I ...

    Results (353 votes). Check out past polls.