Si Module::Util está instalado, use pm_which:
lhp@europa:~$ pm_which GRID::Machine /usr/local/share/perl/5.8.8/GRID/Machine.pm
Para saber si un módulo está instalado y donde se encuentra
(supuesto que el módulo contiene documentación en su interior)
use perldoc -l
:
lhp@nereida:~/LHPbook$ perldoc -l Parse::Yapp /usr/local/share/perl/5.8.4/Parse/Yapp.pm lhp@nereida:~/LHPbook$ perldoc -l Parse::Yapp::Output No documentation found for "Parse::Yapp::Output". lhp@nereida:~/LHPbook$ ls /usr/local/share/perl/5.8.4/Parse/Yapp/Output.pm /usr/local/share/perl/5.8.4/Parse/Yapp/Output.pm lhp@nereida:~/LHPbook$
También puede comprobar la existencia cargando el módulo:
lhp@nereida:~/Lperl/src/ExtUtils$ perl -MNoexiste -e 1 Can't locate Noexiste.pm in @INC (@INC contains: /etc/perl ... BEGIN failed--compilation aborted. lhp@nereida:~/Lperl/src/ExtUtils$ perl -MYAML -e 1 lhp@nereida:~/Lperl/src/ExtUtils$
lhp@nereida:~/Lperl/src/ExtUtils$ cat -n pminst 1 #!/usr/local/bin/perl 2 use strict; 3 use ExtUtils::Installed; 4 5 my $instmod = ExtUtils::Installed->new(); 6 7 foreach my $module ($instmod->modules()) { 8 my $version = $instmod->version($module) || "???"; 9 print "$module $version\n"; 10 }Ahora podemos averiguar que módulos instalados contienen la palabra ''soap'':
lhp@nereida:~/Lperl/src/ExtUtils$ pminst | grep -i soap SOAP 0.28 SOAP::Lite 0.60
Sigue un ejemplo de uso:
pp2@nereida:~/src/perl/IPC-PerlSSH/lib/IPC$ pmdesc IPC::PerlSSH # descripción IPC::PerlSSH (0.05) - a class for executing remote perl code over an SSH link pp2@nereida:~/src/perl/coro$ pminst moize Aspect::Library::Memoize pp2@nereida:~/src/perl/IPC-PerlSSH/lib/IPC$ pmload IPC::PerlSSH # Que modulos carga /usr/share/perl/5.8/Carp.pm /usr/share/perl/5.8/IPC/Open3.pm /usr/share/perl/5.8/IPC/Open2.pm /usr/share/perl/5.8/Exporter.pm /usr/share/perl/5.8/strict.pm /usr/local/share/perl/5.8.8/IPC/PerlSSH.pm /usr/share/perl/5.8/Symbol.pm
nereida:~> perl -MModule::CoreList -e \ 'print Module::CoreList->first_release("Data::Dumper")."\n"' 5.005Mejor aún, use el programa corelist que acompaña a dicho módulo:
$ corelist Data::Dumper Data::Dumper was first released with perl 5.005