Rob Asked: 2012-06-05 07:25:20 +0800 CST2012-06-05 07:25:20 +0800 CST 2012-06-05 07:25:20 +0800 CST 如何检查 perl 和 CPAN 文件的位置? 772 我经常需要为我的雇主为他的确切目的设置新的服务器,因此它们都必须以完全相同的方式设置。所以我在 PHP 中创建了一个脚本,我从自己的盒子中运行该脚本以自动发送所有相关文件、编译所有内容、运行更新以及其他所有内容。 然而,出于某种原因,这些全新的服务器带有 perl,这很好,但是它们在不同的位置安装了 perl。这让我很难在Config.pm不进入并手动找到位置的情况下为 CPAN 复制。 也许有一些我不知道的命令会找到精确的位置? 如果有帮助,通常服务器是 CentOS 5 perl cpan 4 个回答 Voted Dennis Williamson 2012-06-05T07:33:48+08:002012-06-05T07:33:48+08:00 type -P perl 将在路径中找到 Perl 的位置。 如果mlocate.db是最新的,您可以使用 locate CPAN.pm 另一种查找可能位置的方法CPAN.pm: perl -le '$,="\n"; print @INC' Best Answer 에이바 2012-06-05T07:38:31+08:002012-06-05T07:38:31+08:00 使用which命令获取perl的路径: which perl 在linux中使用find命令查找CPAN: find / -name CPAN.pm voretaq7 2012-06-05T07:44:56+08:002012-06-05T07:44:56+08:00 我经常需要为我的雇主为他的确切目的设置新的服务器,因此它们都必须以完全相同的方式设置。所以我在 PHP 中创建了一个脚本,我从自己的盒子中运行该脚本以自动发送所有相关文件、编译所有内容、运行更新以及其他所有内容。 你做错了,为自己做了更多的工作。 调查配置管理工具(Puppet、Chef)或部署工具(radmind)——如果您使用类似于我刚才提到的工具来部署您的系统,您就会知道每个盒子都是完全相同的,更重要的是,它们将被保留方法。 在您有时间这样做之前,locate或者find正如其他人提到的那样,至少会告诉您您想要的文件所在的位置。 mob 2012-06-05T12:29:53+08:002012-06-05T12:29:53+08:00 比 Ava Gailliot 的建议更快并且误报更少: find $(perl -E 'say"@INC"') -name CPAN.pm -exec dirname {} \; 此处的路径是您的 perl 安装的所有目录,允许 perl 在其中查找要加载的模块。
将在路径中找到 Perl 的位置。
如果
mlocate.db
是最新的,您可以使用另一种查找可能位置的方法
CPAN.pm
:使用
which
命令获取perl的路径:在linux中使用
find
命令查找CPAN:你做错了,为自己做了更多的工作。
调查配置管理工具(Puppet、Chef)或部署工具(radmind)——如果您使用类似于我刚才提到的工具来部署您的系统,您就会知道每个盒子都是完全相同的,更重要的是,它们将被保留方法。
在您有时间这样做之前,
locate
或者find
正如其他人提到的那样,至少会告诉您您想要的文件所在的位置。比 Ava Gailliot 的建议更快并且误报更少:
此处的路径是您的 perl 安装的所有目录,允许 perl 在其中查找要加载的模块。