perl库path

我需要检索perl库统计信息和分布所在的path。 该path是运行该脚本所必需的。 我在一个计算机集群上。 谁能帮我?

谢谢

Solutions Collecting From Web of "perl库path"

这个答案假定模块实际上已经安装了,但是不在perl正在寻找的地方。

通常,Perl模块Statistics::Distributions将包含在一个名为Statistics/Distributions.pm的文件中。 在Linux和类似系统上,可以使用locate命令快速搜索这些文件:

 locate Statistics/Distributions.pm 

如果安装了, locate会吐出类似的一行

 /opt/my_perl/lib/Statistics/Distributions.pm 

然后你可以指示perl解释器以各种方式查看这个路径。 一个是定义环境变量PERL5LIB ,即从bash

 prompt> PERL5LIB=/opt/my_perl/lib/ ./myscript.pl 

或者你可以使用perl -I开关:

 prompt> perl -I/opt/my_perl/lib/ ./myscript.pl 

或者你可以修改脚本来use lib ; 有不止一种方法来做到这一点;-)

如果你的意思是你需要在一个程序中使用的模块的路径,它存储在%INC

 $ perl -MLWP::Simple -le 'print $INC{"LWP/Simple.pm"}' /usr/share/perl5/LWP/Simple.pm 

perldoc -m Your::modulee – 显示模块的来源

perldoc -l Your::modulee – 如果在PERL5LIB,-I,@INC等中安装并显示了库的显示路径

Can't locate XXX in @INC ”通常表示模块未安装。 你有没有安装Statistics :: Distributions ?

 cpan Statistics::Distributions 

我有同样的麻烦,可以解决这两个问题:

1)通过运行命令perl -I / blabla / folder_your_module_is_installed / blib / lib / ./script.pl

对于像我这样的傻瓜来说,重要的是要注意路径的末尾是“lib /”,而不是“lib / Other_folder /”。 因为之后有更多的文件夹。

2)在脚本里面你可以写:使用lib'blabla / folder_your_module_is_installed / blib / lib /';

保存并运行perl scripit.pl