Perl中的库文件和模块有什么区别?
答案 0 :(得分:14)
这是perl
的所有Perl代码。所有的区别都纯粹是惯用的。
Perl代码意味着包含使用package
指令:
Perl代码意味着包含不使用package
指令:
.pl
。do
。Perl代码意味着由解释器直接执行:
.pl
,或者根本没有。#!
)行开头,这样就可以在不指定perl
的情况下启动它们。答案 1 :(得分:7)
库文件(我假设你的意思是require 'foo.pl'
这里的东西)是一种过时的(pre-Perl 5)形式的外部模块。在大多数情况下,你不应该再关心了,虽然 仍然是一些Perl 4安装,因此仍然有一些Perl代码保持向后兼容(并且有一些代码简单从未更新过,仍然加载getcwd.pl
等。)。
答案 2 :(得分:-1)
无。它们都是包含Perl代码的文件。不过,这里有一些可能的间接差异。
#!/bin/perl
shbang。.pl
Perl 库(因此'p'+'l')比.pm
更有可能期望 模块。.pm
)模块更有可能使用Exporter
- 尽管甚至更新的模块避免导出任何内容。