使用perlbrew切换到Perl系统

时间:2014-08-07 17:24:54

标签: perl perlbrew

首先,一些背景知识。

perlbrew是一个帮助将Perl安装到非标准目录(通常在您的主目录下)的工具。

它还可以帮助您控制在交互式shell中执行perl时使用的Perl安装。使用perlbrew useperlbrew switch完成安装之间的切换。 perlbrew use仅影响当前的shell,而perlbrew switch则更为永久。

$ perl -V:version             |  $ perl -V:version
version='5.20.0';             |  version='5.20.0';
                              |
$ perlbrew use 5.18.2t        |  $ perlbrew switch 5.18.2t
                              |
$ perl -V:version             |  $ perl -V:version
version='5.18.2';             |  version='5.18.2';
                              |
$ bash -ic 'perl -V:version'  |  $ bash -ic 'perl -V:version'
version='5.20.0';             |  version='5.18.2';

perlbrew off用于恢复使用系统Perl,但它像perlbrew use一样是临时的。有没有办法恢复到具有perlbrew switch的永久性的系统Perl?

2 个答案:

答案 0 :(得分:22)

要让perlbrew管理perl未安装perlbrew的安装,请选择一个名称(" system"在我的例子中)并创建一个指向其bin目录的链接,如下所示:

cd "${PERLBREW_ROOT:-$HOME/perl5/perlbrew}"
mkdir perls/system
ln -s /usr/bin perls/system/bin

它现在会显示在perlbrew list

$ perlbrew list
  ...
  system (5.10.1)
  5.18.2t
* 5.20.0t
  ...

您可以使用perlbrew useperlbrew switch

$ perl -V:version
version='5.20.0';

$ perlbrew switch system

$ perl -V:version
version='5.10.1';

$ bash -ic 'perl -V:version'
version='5.10.1';

这适用于具有相同installbininstallvendorbin(如果适用)和installsitebin目录的安装,由

返回
perl -V:'install.*bin'

顺便说一句,类似的方法可用于为perlbrew安装创建别名。例如,

 ln -s 5.26.1 perls/5.26           # Point to the latest release of a version.
 ln -s 5.26.1 perls/project_name   # Point to the install used by a project.

答案 1 :(得分:1)

您可以使用以下命令

perlbrew switch-off