CPAN 和 Perl 模块的静默和脚本安装?

Mik*_*elt 11 bash perl cpan shell-scripting

我需要在 Scientific Linux (RHEL) 安装脚本中自动安装 CPAN 和一些 Perl 模块。不幸的是,就我所见,我想要的特定模块(至少其中一个)无法作为 RPM:s 找到。

所以我需要安装 CPAN,自动配置它(或使用配置文件),然后自动安装所需的模块(包括依赖项)。

这似乎不是一个非常不寻常的要求,但我还没有看到任何关于此的非常好的文档。问题是,每当第一次启动 CPAN 时,都会运行交互式配置。这可以以某种方式跳过吗?以及如何直接从命令行启动模块安装?

小智 28

在运行 CPAN 之前尝试设置此环境变量:

export PERL_MM_USE_DEFAULT=1

当 CPAN 询问“你想尽可能多地自动配置吗?[是]”时,它会让 perl 自动回答“是”

来源


Jan*_*nen 6

“我如何直接从命令行启动模块安装?”

这应该做:

perl -MCPAN -e 'install Your::Package'
Run Code Online (Sandbox Code Playgroud)


Ali*_*orm 5

如果这是一项重复性任务,花几个小时使用 cpan2rpm 并将它们转换为 RPM 可能是值得的。根据我的经验,CPAN 运行(甚至是交互式)受意外事件(版本异常、网络问题、虚假测试失败)的困扰,无法在(半)自动安装中依赖。


Jef*_*ert 5

为此,您可能想查看cpanm;它是轻量级的、可编写 shell 脚本的,并且比经典的 CPAN 简单得多。