目次

モジュール

名前説明備考
Acme::EyeDrops難読化ジョーク
File::NextFile検索用
File::Basenamepathからfile名取得など
Getopt::Long高機能なコマンドラインオプション解析
Net::MySQLPerlだけで書かれたMySQLネットワークプロトコルへのインターフェイス
Pod::Usage埋め込まれた pod ドキュメントから usage メッセージを表示
Net::OpenSSHPerl で ssh 接続
String::Randomランダムな文字列を生成
Time-Momentさまざまなコーディングスタイルを意識した日付と時間を得るモジュール
Devel-Commentsコメントをデバッグ用メッセージとして出力
autodie例外処理
File::Copy::Recursiveファイルやディレクトリを再帰的にコピー
Email::Valid電子メールアドレスの正当性のチェック

インストール済みモジュールの確認

モジュール名がわかっている場合

ワンライナーで「use module」とすれば、インストールされていなければエラーが出ます。

$ perl -e "use notinstall"
Can't locate notinstall.pm in @INC (@INC contains: ..........

*BSD/Linux

$ find `perl -e 'print "@INC"'` -name '*.pm' -print
/usr/local/lib/perl5/5.x.xx/BSDPAN/BSDPAN.pm
/usr/local/lib/perl5/5.x.xx/BSDPAN/BSDPAN/Override.pm
/usr/local/lib/perl5/5.x.xx/BSDPAN/Config.pm
/usr/local/lib/perl5/5.x.xx/BSDPAN/ExtUtils/MM_Unix.pm
:
:

Windows

以下のコードでいけます。

for my $incdir ( @INC ) {
	opendir my $DIR, $incdir or die $!;
	for ( grep { /\.pm$/ } sort readdir $DIR ) {
		print "$incdir/$_\n";
	}
}

参考

Perlモジュール