如何通过命令行启用Perl功能?

时间:2014-02-01 19:30:41

标签: perl

我想启用say功能(但也包括所有其他功能)。我知道如果我在命令行上编写代码,我可以使用-E选项而不是-e。但是,如果我正在运行脚本:

perl script.pl

我无法使用-E。我不想把use feature say放在脚本中;我想使用命令行选项。我可以在这里使用什么样的选项?我无法从documentation中找到答案。

3 个答案:

答案 0 :(得分:14)

您可以使用-M开关导入模块。一般来说,

-MFoo=bar,baz

相当于

use Foo (split /,/ 'bar,baz');

所以在这里,我们会-Mfeature=say或加载像-M5.010这样的功能包。

但是,我建议您在脚本中指定您使用的任何功能。当您忘记指定开关时,这将避免混淆错误。

答案 1 :(得分:0)

要在命令行中使用精选的{"coord": { "lon": 139,"lat": 35}, "weather": [ { "id": 800, "main": "Clear", "description": "clear sky", "icon": "01n" } ], "base": "stations", "main": { "temp": 281.52, "feels_like": 278.99, "temp_min": 280.15, "temp_max": 283.71, "pressure": 1016, "humidity": 93 }, "wind": { "speed": 0.47, "deg": 107.538 }, "clouds": { "all": 2 }, "dt": 1560350192, "sys": { "type": 3, "id": 2019346, "message": 0.0065, "country": "JP", "sunrise": 1560281377, "sunset": 1560333478 }, "timezone": 32400, "id": 1851632, "name": "Shuzenji", "cod": 200 } 来使用一个班轮

say

输出

perl -Mfeature=say -e 'say "ok"'

(带有换行符)

答案 2 :(得分:-1)

我做了一个 bash 别名:

alias sperl='perl -Mfeature=say'

现在我可以做类似的事情

~/perl$ sperl -e "say 'hi'"
hi