本文教你Perl(1)
發表時間:2023-12-26 來源:明輝站整理相關軟件相關文章人氣:
[摘要]如果你曾經使用過linux,無論時間長短,都必定聽說過perl;甚至可能在不知道的情況下運行了不少perl的腳本。很多服務程序,象“inews”、“mirror”、“debconf”、“majordomo”、“sirc”等等,都是純粹用perl寫的。在Debian區域的“Packages.gz”文...
如果你曾經使用過linux,無論時間長短,都必定聽說過perl;甚至可能在不知道的情況下運行了不少perl的腳本。很多服務程序,象“inews”、“mirror”、“debconf”、“majordomo”、“sirc”等等,都是純粹用perl寫的。在Debian區域的“Packages.gz”文件里做一個簡單的的“zgrep”,你就可以知道有382個包需要perl的支持(也就是意味著這些包都至少有一部分是用perl寫的。),其它28個軟件包也建議或推薦使用perl支持。
但是Perl語言有什么出色之處呢?
"Perl語言在文本處理方面非常突出,它把不同的內容聯成一個整體。對于這種腳本語言來說所有的那些不同的元素,看起來都是一樣的。”——John Ousterhout,Tcl腳本語言的作者
Perl即“Practical Extraction and Report Language”(實用析取報表語言)。是的,比較粗,但是我想那就是你所得到的——如果你打算確信$HUNN NGOUS CORP并且使用它的話。事實上,Larry Uall< Larry@wall org >(Perl的創立者)在Perl的幫助手冊頁里提出:“Perl實際上代表的是Pathologically Edectic Rubbish Lister,但不要告訴任何人我這樣說過。”唔,他是Larry,對此我又能再說些什么呢?
Perl已經被廣泛的認為是“一種擁有各種語言功能的夢幻腳本語言”、“Unix 中的王牌工具”。以及其他的一些類似的稱呼,這些都是贊譽之辭,Perl被用來寫單行腳本,快速執行程序,大的規劃項目(Amazon.com的所有評論產品和控制系統,Netscape的內容策劃管理和傳送系統,人類整組基因工程的DNA排序以及計劃管理等等)。還有數以百萬計的令我們驚訝的各種各樣的事情的高速程序。Perl還能夠實現許多UNIX的公共系統工具的功能(提示:如果你正在學或必須學awk, sed, grep和 tr,我建議你以Perl來代替它們。所有的功能,更快的執行效率,相信你將永遠不會因為它的性能發展太快而不適應它。)
就像你對所有的現代語言所期望的那樣,Perl允許你建立面向對象的程序。它也可以進行網絡操作(例如socket等等),并且有良好的可移植性(一個寫得好的腳本可以在Linux,BSD,Solaries,Dos,Win9x,NT,MacOS,OS/2, AnugaOS,VMS等操作系統中不需要任何修改的運行),編寫和調試周期很短——由于沒有編譯的要求,你只需將變化的部分寫出,就可以運行腳本。還有數目龐大的可適用于執行任何一項任務的模塊(即預建立Perl的例程),Comprehensive Perl Archiue Network (CPAN)就是每一個Perl程序員所能擁有的最好的模塊庫之一。