gpt4 book ai didi

perl - 从 CLI 的模块调用 Perl 函数

转载 作者:行者123 更新时间:2023-12-03 07:52:11 25 4
gpt4 key购买 nike

我想要一些可以在脚本中调用的函数,但它可以在命令行中发挥作用。所以我创建了一个小模块,但出现错误。

一个简单的演示示例:
在当前目录中,我有文件 Foo.pm

use strict;
use warnings;
package Foo;

sub get_string {
return "foo+bar";
}

然后在命令行中我这样做:

$ perl -I. -MFoo::get_string

我得到:

Can't locate Foo/get_string.pm in @INC (you may need to install the
Foo::get_string module)

我在这里做错了什么?

最佳答案

首先,更改 Foo.pm 以避免 Foo.pm did not return a true value 错误。在文件末尾添加 1;:

use strict;
use warnings;
package Foo;

sub get_string {
return "foo+bar";
}

1;

接下来,-MFoo::get_string 语法可能需要一个名为 Foo::get_string 的模块,但您的模块只是简单地命名为 Foo .

以下内容对我有用:

$ perl -I. -MFoo -E 'say Foo::get_string'
foo+bar

引用perlrun对于-M

如果您需要将参数传递给子:

$ perl -I. -MFoo -E 'say Foo::get_string(5)'

关于perl - 从 CLI 的模块调用 Perl 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76908933/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com