2015-04-02 101 views
0

我正在客戶端網站上工作並且無法訪問root,因此我無法對安裝在usr/bin中的退出perl版本(5.1)執行任何操作,但我需要爲perl安裝額外的模塊,所以我在自己的home目錄中安裝了我自己的perl版本(5.2),並進行了路徑設置。Perl:我如何在linux中設置.pl文件的perl版本

我看看下面:

which perl 

給了我正確的目錄。

而且

perl -v 

給我5.2。

但是,當我運行.pl文件時,打印輸出表示它再次在perl 5.10上運行。

我必須做的Perl xxx.plperl 5.2運行它,如果我只是做./xxx.pl,它只是運行在perl 5.10

我怎樣才能解決這個問題?

+1

如果Perl的版本錯誤,還可以使用5.020;強制運行時失敗。 – tripleee 2015-04-02 12:21:30

回答

3

perl的路徑在腳本的shebang行中指定。

#! /usr/bin/perl 

要麼改變它那裏指向正確的安裝或使用

#! /usr/bin/env perl 

應該拿起$ PATH第一個Perl的可執行文件。

或者在命令行中指定的解釋器中運行它:你可能想看看就是PerlBrew

/path/to/perl /path/to/script.pl 
0

一件事。這是一個允許您在大多數Unix/Linux和Mac OS X系統上安裝Perl而不必擁有root權限的系統。

$ perlbrew use 5.20 
$ perl -v 
This is perl 5, version 18 (blah, blah, blah) 

$ perlbrew use 5.18 
$ perl -v 
This is perl 5, version 18 (yadda, yadda, yadda) 

Perlbrew店的Perl的每個版本的$HOME目錄下,你可以使用shebang指定要使用Perl的特定版本:

更妙的是,你可以的Perl的版本之間切換。

我象徵性地鏈接了$HOME/bin下不同版本的Perl,所以我可以做到這一點。