INTELLIGENT WORK FORUMS FOR COMPUTER PROFESSIONALS
Come Join Us!
- Talk With Other Members
- Be Notified Of Responses
To Your Posts
- Keyword Search
- Turn Off Ad Banners
- One-Click Access To Your
Favorite Forums
- Automated Signatures
On Your Posts
- Best Of All, It's Free!
*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.
Partner With Us!
"Best Of Breed" Forums Add Stickiness To Your Site

(Download This Button Today!)
Member Feedback
"...Just a quick note to say, "THANKS!" for these forums...The site is very well layed out and easy to use. Thanks for bringing us together - we need each other."
Geography
Where in the world do Tek-Tips members come from?
|
List installed Perlmodules
|
|
|
mikri (TechnicalUser) |
12 Aug 04 7:29 |
Hi,
how can i list the installed Perlmodules an my Computer?
Thx Michael |
|
|
rab54 (Programmer) |
12 Aug 04 8:19 |
This is the code that I use on our servers -
#!/usr/bin/perl
use strict; use File::Find;
my $count = 0;
my (@mod, %done, $dir); find(\&get, grep { -r and -d } @INC); @mod = grep(!$done{$_}++, @mod); foreach $dir (sort { length $b <=> length $a } @INC) { foreach (@mod) { next if s,^\Q$dir,,; } } print "Content-type: text/html\n\n";
print "<HTML><HEAD><TITLE>Installed Perl Modules</TITLE></HEAD><BODY bgcolor='#c0c0c0'>"; print "<h3 align='center'>Perl Modules Installed Thor</h3>";
# list table heading print "<table border=1 bgcolor='#999999' align='center'>"; print "<tr><th>Perl Module Number</th><th>Perl Module Name</th></tr>\n";
foreach (@mod) { s,^/(.*)\.pm$,$1,; s,/,::,g;
print "<tr align='center'>"; print "<td>$count</td>"; print "<td>$_</td>"; print "</tr>\n";
$count++; }
print "</table>"; print "Total : ($#mod modules!)\n\n"; sub get { /^.*\.pm$/ && /$ARGV[0]/i && push @mod, $File::Find::name; }
Hope this helps !
Rab |
|
|
PaulTEG (TechnicalUser) |
12 Aug 04 9:01 |
if you're on doze, and using activestate theres an option in PPM to list installed modules, I believe the same exists in the CPAN shell HTH --Paul It's important in life to always strike a happy medium, so if you see someone with a crystal ball, and a smile on their face ... |
|
|
mikri (TechnicalUser) |
13 Aug 04 3:53 |
Thanks for the support, The script is exactly that wat i am looking for.
Thank You
Michael |
|
Here's a way to do it if a text dump is okay with you.
use ExtUtils::Installed;
my $instmod = ExtUtils::Installed->new();
foreach my $module ($instmod->modules()) { my $version = $instmod->version($module) || "???"; print "$module -- $version\n"; }
exit(0);
|
|
|
 |
|