|
|
|
#*****************************************************************#
# TOOL: #
# Liste der Installierten Perl-Module anzeigen #
#*****************************************************************#
# Modul File::Find einbinden
use File::Find;
$|=1 ;
my @ModulListe = ();
# @INC = Globale Variable mit den Pfaden der Perlmodule
foreach my $PerlVerzeichnis (@INC)
{
if ($PerlVerzeichnis =~ /^\./) { next; }
find(\&machModulListe,$PerlVerzeichnis) ;
}
# Alphabetisch sortieren (Groß- / Kleinschreibung ignorieren)
@SortModulListe = sort {lc($a) cmp lc($b)} keys %ModulListe ;
foreach my $Modul (@SortModulListe)
{
print $Modul."\n";
}
#*****************************************************************#
# Subroutine #
#*****************************************************************#
sub machModulListe()
{
if ($File::Find::name =~ /\.pm$/)
{
# Modulquelltext lesen und Paketname auslesen
open(FILE,$File::Find::name) || return;
while(FILE)
{
if (/^ *package +(\S+);/)
{
$ModulListe{$1} = 1; last;
}
}
close(FILE) ;
}
}
|