每次编写脚本时,有没有办法“自动使用”某些模块?

时间:2013-05-12 05:28:12

标签: perl

正如标题所示,无论如何,我是否可以自动告诉perl在我编写的每个perl脚本中包含以下内容(除非另有说明)?

use strict;
use warnings;
use feature 'say';

我知道写三行并不是什么大不了的事,但如果我能改变一些系统文件或其它东西来做它就好了,所以我再也不用这么做了。

提前致谢。

2 个答案:

答案 0 :(得分:4)

如果您使用更高的perl 5.11.0,则默认启用use strict;。您何时使用Moose,免费获得strict免费warnings;

您还可以使用所有需要的功能定义自己的模块,并将所有行缩减为一行,如:

use Myname::defs;

如何开发包含您需求的模块,请在此处解答:How to make "use My::defaults" with modern perl & utf8 defaults?。如果你不需要utf8,你可以缩短对严格,警告和功能的geniue答案。您也可以查看this questionthis question

对于开发,您还可以考虑:

use strictures 1;

阅读about it here

答案 1 :(得分:1)

使用版本号大于或等于5.11.0的use VERSION语法将在词法上启用限制,就像use strict一样(除启用功能外)。以下内容:

use 5.11.0;

表示:

use strict;
use feature ':5.11';

虽然像emacs这样的编辑器可以设置为自动添加3行,但您可以通过在调用perl时提供参数来有效地实现相同的目的:

perl -w -M5.11.0 foo.pl

[您可以考虑在shell启动脚本中为perl添加alias。]