为了他的确切目的,我必须不断地为我的雇主设立新的服务器,因此他们都必须以完全相同的方式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 ) – 如果你用你刚刚提到的工具来部署你的系统,你会知道每个盒子都是完全相同的 ,更重要的是,办法。
直到你有时间这样做, locate或find其他人提到的至less会告诉你你想要的文件在哪里生活。
比Ava Gailliot的build议更快,误报更less:
find $(perl -E 'say"@INC"') -name CPAN.pm -exec dirname {} \;
这里的path是perl安装的所有目录,perl允许查找要加载的模块。