[精讚] [會員登入]
3527

[PERL] 19-模組的安裝和維護

模組的安裝和維護

分享此文連結 //n.sfs.tw/11982

分享連結 [PERL] 19-模組的安裝和維護@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2021-11-12 10:54:37 最後編修
2017-10-27 11:15:16 By 張○○
 

自動目錄

前面介紹模組的使用和撰寫,可以撰寫自己的函式庫,大部分都是使用別人的模組。

安裝模組簡介

安裝模組有兩種方法,第一種是使用PERL的套件管理CPAN;另一種是直接下載檔案解壓縮放到指定的目錄。

CPAN是 Comprehensive Perl Archive Network的首字縮寫,稱為「綜合典藏網」,它提供一個找套件的網頁 http://search.cpan.org

如果你寫了一個不錯的模組想分享給大家,可到 https://pause.perl.org 註冊帳號並上傳。

直接下載壓縮檔的方法又稱為 tarball安裝法,因為模組常會包裝成 xx.tar.gz 的型式,你只要下載並解壓,再放到 @INC 中的目錄即可。

 

使用 CPAN 安裝模組

詳細請參考 使用CPAN安裝模組

你需要先有安裝編譯器及 perl-cpan

# yum install gcc* perl-CPAN

再進到 cpan-shell 中

# perl -MCPAN -e shell

在cpan-shell中下指令安裝,例如安裝 md5,這個自己寫不出來

cpan[1]> install Digest::MD5

cpan shell的數字代表第幾行,沒太大的意義。

安裝完畢就能使用了,依該套件指定的方法使用即可。

此例系統安裝完後把pm檔放在 /usr/local/lib64/perl5 的目錄中(各系統都不一樣)

離開 cpan shell 打指令quit

cpan[2]> quit

程式使用範例

use Digest::MD5 qw(md5 md5_hex md5_base64);

print  $digest = md5_hex('NASE1234');

 

使用 tarball 安裝模組

有些情況得使用 tarball來安裝模組,例如系統的版本太舊、該模組無法用cpan安裝、第三方提供的模組或是cpan安裝失敗等等。

在解壓 tarball 檔後,會有 Makefile.pl 這個檔案,這檔案是要建立 "makefile" 的perl程式,而建立 makefile後會交由 make來處理。

詳細請參考這篇  安裝下載PERL的tar檔模組

# perl Makefile.PL
# make
# make install

如果下載的套件沒問題,這樣定能安裝順利。

 

檢查裝了哪些模組

要檢查有裝哪些 PERL模組,可先安裝:

# yum install perl-ExtUtils-MakeMaker

傾印已安裝

# instmodsh
Available commands are:
   l            - List all installed modules
   m <module>   - Select a module
   q            - Quit the program
cmd? l
Installed modules are:
   Digest::MD5
   ExtUtils::MakeMaker
   Perl
   Test::Simple
   Time::Elapse

使用cpan指令

$ cpan -l

我怎麼知道我要用什麼模組?

首先你得知道你目前想要什麼樣的功能?你可以參考別的人程式,再查看他使用的模組。

當然對方的程式也許在你的系統中不能運作,你得自行搜尋相關的解法,例如到網站

http://search.cpan.org

輸入關鍵字,尋找可用的模組,例如我想要取得現在、過去的日期,打入關鍵字 datetime

點進去看說明及範例是不是你要的module,安裝並測試。

例如我看Date::Easy::Datetime這個似乎符合我的需要,便安裝看看及測試。

套件就介紹到這,下一篇寫重頭戲:檔案的處理。

 

上一篇 18-套件及模組
回到目錄 01-撰寫第一隻PERL程式
下一篇 20- 檔案目錄處理

END

你可能感興趣的文章

自行撰寫syslog server建立資訊安全控管中心#2 -- 架構和作法 利用PERL將syslog收攏到資料庫的程式,架構和作法

[PERL] 命令列傳入參數 argv Perl 的外部傳參,是$ARGV[0]、$ARGV[1]、$ARGV[2].....

[PERL] 13- 變數的視界 變數的使用範圍,什麼是my,什麼是our?

[PERL] 前置if和後置if (if修飾子)的差別 perl的if可以拿來作為後置修飾子使用,此外還有一個unless像是if的相反,分析他們的差異

自行撰寫syslog server建立資訊安全控管中心#3 -- 程式下載和安裝 利用PERL將syslog收攏到資料庫的程式,程式下載和安裝

Apache Worker MPM =worker 調整參數 Apache目前一共有三種穩定的MPM(Multi-Processing Module,多進程處理模式 簡稱: MPM)

我有話要說

>>

限制:留言最高字數1000字。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

[Freebsd] 定時測試 ADSL 是否斷線並重連 中華電信 ADSL 雖有固定 ip,可是他卻會不定時「斷線」, 使用以下的 方法可以定時測試是否斷線,以及重新撥接。

UTF-8的網頁但IE8一片空白 UTF8編碼的網頁在Firefox 正常顯示、但IE8 就是空白,IE8編碼設定是「自動偵測」可是自動偵測到的是 big5...

[PHP] 檢查檔案是否是圖檔 使用getimagesize函數檢查檔案是否是圖檔

[CodeIgniter 3] 資料庫的使用方法整理2/2 CI3 承襲 CI2,有很多的builder class可以用,依各人的使用習慣,有人喜歡一堆sql字串,有人喜歡用helper

維修海棉拖把頭 這類型的海棉拖把很好用,可是這近發現海棉頭越來越不耐用,也許是錯覺,以往都能用個三四個月,現在二個月就差不多掉下來。 這