代码之家  ›  专栏  ›  技术社区  ›  Dummy00001

可用作程序和模块的Perl脚本

  •  5
  • Dummy00001  · 技术社区  · 14 年前

    我有一个Perl脚本(独立程序),其中包含一些我想在其他脚本中重用的sub。由于执行环境的限制,我无法将函数移到公共位置 .pm 文件。

    require do 被另一个剧本欺骗了?

    我唯一能找到的就是 caller 在顶层:当 预计起飞时间 显示谁加载了模块。有没有更好的解决办法?

    1 回复  |  直到 14 年前
        1
  •  10
  •   Community CDub    8 年前

    是的,你的 caller 方法是正确的-这是一种由 brian d foy

    modulino的主要工作部分如下所示(见下面链接的答案):

    __PACKAGE__->run( @ARGV ) unless caller;
    sub run {
        my( $class, @args ) = @_;
    }
    1;
    

    以下是一些参考资料:

    "Modules as Programs" chapter from "Mastering Perl" book by brian d foy

    "Scripts as Modules" article in Dr. Dobbs

    "How a script becomes a module" article on perlmonks

    What should I put in my starter template for my Perl programs?