Macos 在mac上降级perl版本

Macos 在mac上降级perl版本,macos,perl,Macos,Perl,首先,我是MAC的新手。 我在Mac上也面临着类似的问题,它随V5.28.0一起提供,但我的应用程序必须使用PerlV5.18.2。使用perlbrew install 5.18.2安装了perl 5.18.2,安装成功 我有两个问题 我的默认版本和其他版本安装在哪里?有什么命令可以知道他们吗?已尝试检查echo$PATH,但没有使用 如何将默认版本设置为5.18.2 问候 AVK默认安装位置为 /usr/bin/perl 但这可能不是它在MacOS上的位置。您可以通过运行以下命令确定答案:

首先,我是MAC的新手。
我在Mac上也面临着类似的问题,它随V5.28.0一起提供,但我的应用程序必须使用PerlV5.18.2。使用
perlbrew install 5.18.2
安装了perl 5.18.2,安装成功

我有两个问题

  • 我的默认版本和其他版本安装在哪里?有什么命令可以知道他们吗?已尝试检查echo$PATH,但没有使用

  • 如何将默认版本设置为5.18.2

  • 问候

    AVK

    默认安装位置为

    /usr/bin/perl
    
    但这可能不是它在MacOS上的位置。您可以通过运行以下命令确定答案:

    perlbrew off
    which perl
    
    printf -- "%s\n" "${PERLBREW_ROOT:-$HOME/perl5/perlbrew}/perls"
    
    (重新启动终端将重新激活perlbrew。)


    您安装的版本位于以下程序返回的目录下的目录中:

    perlbrew off
    which perl
    
    printf -- "%s\n" "${PERLBREW_ROOT:-$HOME/perl5/perlbrew}/perls"
    

    您可以修改路径,以便
    perl
    使用

    perlbrew switch <name>     # Changes it for this shell instance and those created later.
    perlbrew use <name>        # Changes it for this shell instance only.
    
    有关切换到系统Perl的信息,请参阅


    脚本需要在其shebang(
    #!
    )行中指定正确的
    perl
    。由标准Perl模块安装程序安装的脚本将正确设置此设置,但您需要编辑手动安装的脚本的shebang(
    #!
    )行。

    另一个选项(与
    perlbrew
    不兼容)是使用。这使您可以为每个目录运行不同版本的perl。使用
    brew install plenv
    安装后,您可以这样使用它:

    $ plenv install 5.18.2
    $ cd project/needing/old/perl
    $ echo "5.18.2" > .perl-version
    
    呸!在该目录或其任何子目录中运行
    perl
    ,将使用5.18.2


    注意:如果您使用
    /script.pl
    运行perl脚本,它具有
    #/usr/bin/perl
    ,应该继续使用安装在
    /usr/bin/perl
    上的perl。但是,如果shebang行是
    /usr/bin/env perl
    ,则应切换到
    .perl version
    文件指定的版本。

    这如何回答任何问题?他们已经在使用perlbrew了,他们正在询问如何使用它以及其他问题,这些问题都没有答案。除此之外,使用
    /usr/bin/env perl
    是一个坏主意,原因正是您所说的:它将更改perl us用作
    的内容。perl版本将更改,而不是使用安装它的版本。@ikegami这主要针对遇到此问题的任何其他人。我需要在macOS上为某些应用程序运行较低版本的peel,这对我来说是最好的解决方案。(我运行过perlbrew和plenv。)我希望其他人会发现它有用。