Wie ermittele ich, welche Perl-Module über das Grundsystem hinaus
installiert wurden?
Die Antwort liefert das Kommando:
Das Ergebnis ist ein formatiertes POD-Dokument, das die
Installationshistorie aller per make install oder
./Build install installierten Module aufführt.
Das Dokument wird mit der Installation des ersten Moduls
angelegt. Unmittelbar nach Installation des Core-Systems ist es noch
nicht vorhanden, da noch kein zusätzliches Modul installiert wurde.
Mit jeder Modul-Installation wird ein Eintrag am Ende hinzugefügt.
Wird ein Modul mehrfach installiert, taucht es mehrfach auf.
Programm
Liefere die Namen der zusätzlich installierten Module, alphabetisch
sortiert, ohne Dubletten:
1 #!/usr/bin/env perl
2
3 use strict;
4 use warnings;
5
6 my %mod;
7 my $cmd = 'perldoc -u perllocal';
8 open(my $fh,'-|',$cmd) or die "ERROR: open failed ($!)";
9 while (<$fh>) {
10 if (/^=head2.*\|(.*)>/) {
11 $mod{$1} = 1;
12 }
13 }
14 close($fh) or die qq|ERROR: Command failed: "$cmd" (Exit Code: $?)\n|;
15
16 for my $mod (sort keys %mod) {
17 print "$mod\n";
18 }
19
20 # eof