查找 CPAN 镜像并配置本地 CPAN 镜像列表

CPAN 镜像是在线存储库,托管或“镜像” CPAN 上的 Perl 模块分发。世界上有数百个 CPAN 镜像。当第一次在一台机器上运行 CPAN 程序时,它将配置 CPAN 镜像列表,用于检查模块的新版本并下载 Perl 分发。然而,并非所有 CPAN 镜像都是相同的:分发列表的年龄、速度和地理位置因镜像而异,因此您可能需要重新配置本地 CPAN 镜像列表以满足您的需求。本文将介绍如何查找 CPAN 镜像和编辑本地 CPAN 镜像配置。

查找 CPAN 镜像

您可以在这里找到公共 CPAN 镜像的在线列表。该列表经常更新,并列出位置、使用的方案(ftp、http)、模块列表的年龄和一些测试结果。查看此列表,您会发现一些镜像几天不刷新其模块列表——如果您使用这些镜像,您可能会错过您最喜欢的模块的最新版本!可以在这里找到 JSON 格式的 CPAN 镜像列表。

启动 CPAN 壳

一旦您确定了要使用的 CPAN 镜像的 URL,请打开终端并加载 cpan 壳

cpan

cpan shell -- CPAN exploration and modules installation (v2.00)
Enter 'h' for help.

cpan[1]>

查看本地 CPAN 镜像列表

CPAN 镜像列表存储在“urllist”变量中。要在 CPAN 壳中查看镜像列表,请输入“o conf urllist”

cpan[1]>o conf urllist
    urllist           
    0 [http://httpupdate3.cpanel.net/CPAN/]
    1 [http://httpupdate23.cpanel.net/CPAN/]
    2 [http://mirrors.servercentral.net/CPAN/]
    3 [ftp://cpan.cse.msu.edu/]

添加 CPAN 镜像

要添加 CPAN 镜像,请使用“unshift”或“push”函数将镜像的 URL 添加到镜像列表的开头或末尾。确保镜像的 URL 包含方案(http、ftp)。

cpan[2]> o conf urllist push http://mirror.waia.asn.au/pub/cpan/

删除 CPAN 镜像

要删除 CPAN 镜像,请使用“shift”或“pop”函数从镜像列表的开头或末尾删除镜像 URL

cpan[3]> o conf urllist pop

完全替换现有镜像列表

要使用新镜像列表覆盖现有列表,只需提供新镜像的 URL 作为空格分隔的列表

cpan[4]> o conf urllist http://mirror.waia.asn.au/pub/cpan/ ftp://mirrors.coopvgg.com.ar/CPAN/

保存更改

一旦您已更新 CPAN 镜像列表,请确保将这些更改提交到文件,以便在当前会话之外保存

cpan[5]> o conf commit
commit: wrote '/home/sillymoose/.cpan/CPAN/MyConfig.pm'

直接编辑 CPAN 配置文件

您还可以直接编辑 CPAN 配置文件。对于本地用户 Perl 安装,这是 */CPAN/MyConfig.pm,而对于系统 Perl 安装,这是 */CPAN/Config.pm(父目录取决于平台)。在编辑文件时,urllist 是一个哈希键,指向一个包含镜像 URL 的数组引用。注意,使用 Perl 的引号运算符(“q”)对 URL 进行引号处理。简单编辑并保存文件。

'urllist' => [
    q[http://httpupdate3.cpanel.net/CPAN/], 
    q[http://httpupdate23.cpanel.net/CPAN/], 
    q[http://mirrors.servercentral.net/CPAN/], 
    q[ftp://cpan.cse.msu.edu/]
],


本文最初发布于 PerlTricks.com

标签

David Farrell

David 是一位专业程序员,他经常在 Twitter博客 上撰写有关代码和编程艺术的帖子。

查看他们的文章

反馈

这篇文章有什么问题吗?请在 GitHub 上打开一个问题或拉取请求,帮助我们。