Suprimir un Módulo Instalado

El siguiente guión pmrm muestra como eliminar los ficheros de una distribución:
nereida:/usr/sbin# cat -n pmrm
     1  #!/usr/local/bin/perl -w
     2  use strict;
     3  use ExtUtils::Packlist;
     4  use ExtUtils::Installed;
     5
     6  $ARGV[0] or die "Usage: $0 Module::Name\n";
     7
     8  my $mod = $ARGV[0];
     9
    10  my $inst = ExtUtils::Installed->new();
    11
    12  foreach my $item (sort($inst->files($mod))) {
    13    print "removing $item\n";
    14    unlink $item;
    15  }
    16
    17  my $packfile = $inst->packlist($mod)->packlist_file();
    18  print "removing $packfile\n";
    19  unlink $packfile;
Al ejecutarlo (con los privilegios adecuados) podemos eliminar los ficheros implicados:
nereida:/usr/sbin# pminst | grep -i flex
Parse::Flex 0.11
nereida:/usr/sbin# pmrm Parse::Flex
removing /usr/bin/makelexer.pl
removing /usr/local/man/man3/Parse::Flex.3pm
removing /usr/local/man/man3/Parse::Flex::Generate.3pm
removing /usr/local/share/perl/5.8.8/Parse/Flex.aux
removing /usr/local/share/perl/5.8.8/Parse/Flex.dvi
removing /usr/local/share/perl/5.8.8/Parse/Flex.idx
removing /usr/local/share/perl/5.8.8/Parse/Flex.log
removing /usr/local/share/perl/5.8.8/Parse/Flex.pdf
removing /usr/local/share/perl/5.8.8/Parse/Flex.pm
removing /usr/local/share/perl/5.8.8/Parse/Flex.tex
removing /usr/local/share/perl/5.8.8/Parse/Flex.toc
removing /usr/local/share/perl/5.8.8/Parse/Flex/Generate.pdf
removing /usr/local/share/perl/5.8.8/Parse/Flex/Generate.pm
removing /usr/local/lib/perl/5.8.8/auto/Parse/Flex/.packlist
nereida:/usr/sbin# ls -l /usr/local/share/perl/5.8.8/Parse/F*
total 0
En la documentación de ExtUtils::Packlist puede encontrar un ejemplo mas completo.

Casiano Rodríguez León
Licencia de Creative Commons
Principios de Programación Imperativa, Funcional y Orientada a Objetos Una Introducción en Perl/Una Introducción a Perl
por Casiano Rodríguez León is licensed under a Creative Commons Reconocimiento 3.0 Unported License.

Permissions beyond the scope of this license may be available at http://campusvirtual.ull.es/ocw/course/view.php?id=43.
2012-06-19