gpt4 book ai didi

perl - 如何以非 root 用户身份使用 CPAN?

转载 作者:行者123 更新时间:2023-12-03 05:18:11 24 4
gpt4 key购买 nike

我想在没有 root 访问权限的共享服务器上安装 perl 模块。我怎样才能做到这一点?他们似乎也有旧版本的 CPAN(它提示运行命令时),是否可以更新从我的帐户使用的 CPAN 命令而不需要 root 访问权限?

最佳答案

到目前为止我发现的最简单的方法就是说

wget -O- http://cpanmin.us | perl - -l ~/perl5 App::cpanminus local::lib
eval `perl -I ~/perl5/lib/perl5 -Mlocal::lib`
echo 'eval `perl -I ~/perl5/lib/perl5 -Mlocal::lib`' >> ~/.profile
echo 'export MANPATH=$HOME/perl5/man:$MANPATH' >> ~/.profile

假设您的个人资料名为 .profile ,您可能需要将其更改为 .bash_profile , .bashrc等等。之后你可以通过说来安装模块

cpanm Module::Name

并且只需像安装在根目录中一样使用它们即可。

<小时/>

下面是对上面命令的作用的简要说明。

wget -O- http://cpanmin.us获取最新版本的cpanm并将其打印到 STDOUT然后通过管道传输到 perl - -l ~/perl5 App::cpanminus local::lib 。第一个-告诉perl预计该程序将在 STDIN 上运行,这使得perl运行 cpanm 的版本我们刚刚下载。 perl将其余参数传递给 cpanm-l ~/perl5论证告诉cpanm在哪里安装 Perl 模块,另外两个参数是要安装的两个模块。 [App::cpanmins ] 1是安装 cpanm 的软件包。 local::lib 是一个辅助模块,用于管理在本地目录中运行模块所需的环境变量。

安装这些模块后,我们运行

eval `perl -I ~/perl5/lib/perl5 -Mlocal::lib`

设置使用本地模块所需的环境变量,然后

echo 'eval `perl -I ~/perl5/lib/perl5 -Mlocal::lib`' >> ~/.profile

确保我们下次登录时能够使用它们。

echo 'export MANPATH=$HOME/perl5/man:$MANPATH' >> ~/.profile

有望使 man 找到本地模块的手册页。

关于perl - 如何以非 root 用户身份使用 CPAN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2980297/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com