Perlでモジュールのバージョン一覧を取得する - その2
標準モジュールのバージョン一覧を取得する方法は比較的簡単です。標準モジュールのModule::CoreListを使います。
Module::CoreListは、あるモジュールがいつ標準モジュールになったか、あるバージョンのPerlに、どのバージョンのモジュールが添付されているか、などが分かります。
module.pl
#!/usr/bin/env perl
use strict;
use warnings;
use utf8;
use Module::CoreList;
my $perl_version = shift @ARGV;
foreach my $module (Module::CoreList->find_modules(qr//, $perl_version)) {
print "$module";
my $version = $Module::CoreList::version{$perl_version}{$module};
print "\t$version" if defined $version;
print "\n";
}
引数にPerlのバージョンを渡すと、そのPerlの標準モジュール一覧をバージョン付きで得ることができます。
$ perl module.pl 5.012002
AnyDBM_File 1.00
App::Cpan 1.5701
App::Prove 3.17
App::Prove::State 3.17
...途中省略...
version 0.82
vmsish 1.02
warnings 1.09
warnings::register 1.01
コメントする