我希望能够在列表中的每个模块上运行此测试。不知道如何让 perl 循环遍历每个项目。

use Module::Load;
eval {
  load Image::Magick;
  1;
} or die "you need Module to run this program";
  • 位::矢量
  • 鲤鱼::氏族
  • 检查::ISA
  • DBD::Oracle
  • DBI
  • 数据::GUID
  • 数据::OptList
  • 数据::TreeDumper
  • 数据::UUID
  • 日期::计算
  • 开发::大小
  • ExtUtils::MakeMaker
  • 日志::调度
  • Log::Dispatch::File::Rolling
  • Log::Dispatch::FileRotate
  • 日志::Log4perl
  • 参数::Util
  • 参数::验证
  • 排序::自然
  • Sub::Exporter
  • 子::安装
  • 子::上级
  • 系统::系统日志
  • 术语::大小
  • 测试::异常
  • 测试::简单
  • 测试::使用::ok
  • 树::简单的
  • 最佳答案

    试试看:

    #!/usr/bin/perl
    use 5.010;
    use strict;
    use warnings;
    
    my @modules = qw(
        Bit::Vector
        Carp::Clan
        Check::ISA
        DBD::Oracle
        DBI
        Tree::Simple
    );
    
    for(@modules) {
        eval "use $_";
        if ($@) {
            warn "Not found : $_" if $@;
        } else {
            say "Found : $_";
        }
    }
    

    关于perl 脚本来检查是否安装了 perl 模块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9340046/

    10-15 11:34