我如何检查perl和CPAN文件的位置?

为了他的确切目的,我必须不断地为我的雇主设立新的服务器,因此他们都必须以完全相同的方式build立。 所以我在PHP中创build了一个脚本,从我自己的盒子中运行,自动发送所有相关文件,编译所有内容,运行更新等等。

然而,由于某些原因,这些全新的服务器来与Perl,这是好的,但他们已经安装在不同的地点。 这让我很难复制CPAN的Config.pm ,而无需手动查找位置。

有没有可能有一些命令我不知道,将追捕的确切位置?

如果有帮助, 通常服务器是CentOS 5

使用which命令获取perl的path:

 which perl 

在linux中使用find命令查找CPAN:

 find / -name CPAN.pm 
 type -P perl 

将在path中findPerl的位置。

如果mlocate.db是最新的,你可以使用

 locate CPAN.pm 

另一种查找CPAN.pm可能位置的方法:

 perl -le '$,="\n"; print @INC' 

为了他的确切目的,我必须不断地为我的雇主设立新的服务器,因此他们都必须以完全相同的方式build立。 所以我在PHP中创build了一个脚本,从我自己的盒子中运行,自动发送所有相关文件,编译所有内容,运行更新等等。

你做错了,为自己做更多的工作。
调查configurationpipe理工具( Puppet , Chef )或者部署工具( radmind ) – 如果你用你刚刚提到的工具来部署你的系统,你会知道每个盒子都是完全相同的 ,更重要的是,办法。


直到你有时间这样做, locatefind其他人提到的至less会告诉你你想要的文件在哪里生活。

比Ava Gailliot的build议更快,误报更less:

 find $(perl -E 'say"@INC"') -name CPAN.pm -exec dirname {} \; 

这里的path是perl安装的所有目录,perl允许查找要加载的模块。