Perl 脚本无法在 @INC 中找到 Env.pm

Nuc*_*ion 2 perl environment-variables redhat-enterprise-linux

我正在尝试运行一个 Perl 脚本,该脚本在开始时具有

use Env '$Foo1', '$Foo2';
Run Code Online (Sandbox Code Playgroud)

我收到以下消息:

在@INC中找不到Env.pm(@INC包含:/usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/ lib64/perl5 /usr/share/perl5 .) 在 ../path/to/Foo3 第 8 行

我试图找到 Env.pm 模块 ( find . -name Env.pm -print) 但没有任何反应,它只是返回到命令提示符。

我正在使用 RHEL7 和 perl v5.16.3。

小智 5

安装 perl-Env 包以获取 Env.pm。

yum install perl-Env
Run Code Online (Sandbox Code Playgroud)

你也可以使用 yum 的 whatprovides 特性来查看哪些包提供了文件,

yum whatprovides */Env.pm

perl-Env-1.04-2.el7.noarch : Perl module that imports environment variables as scalars or arrays Repo        : base Matched from: Filename    : /usr/share/perl5/vendor_perl/Env.pm
Run Code Online (Sandbox Code Playgroud)