- 論壇徽章:
- 1
|
本文由鄙人翻譯完成,說起來翻譯完成了都已經(jīng)一年多了,可是一直沒發(fā),
一來是因?yàn)闆]有人幫我校對(duì),二來是我一直想攢多了一起發(fā),可惜時(shí)至今日,
再要是不發(fā)就快要捂爛了。
說實(shí)話,這篇文檔沒什么技術(shù)含量 
最新版本可以從這里獲。≒OD 格式):
[urlhttp://svn.perlchina.org/trunk/POD2-CN/lib/POD2/CN/perl.pod[/url]
- 標(biāo)題
- perl - Practical Extraction and Report Language
- 語法
- perl [ -sTuU ] [ -hv ] [ -V[:*configvar*] ]
- [ -cw ] [ -d[:*debugger*] ] [ -D[*number/list*] ]
- [ -pna ] [ -F*pattern* ] [ -l[*octal*] ] [ -0[*octal*] ]
- [ -I*dir* ] [ -m[-]*module* ] [ -M[-]*'module...'* ] [ -P ] [ -S ]
- [ -x[*dir*] ] [ -i[*extension*] ]
- [ -e *'command'* ] [ -- ] [ *programfile* ] [ *argument* ]...
- 如果你是一個(gè) Perl 的初學(xué)者,那么你最好先閱讀一下 perlintro,
- 那是一個(gè)為初學(xué)者專門準(zhǔn)備的簡(jiǎn)單介紹,為你講解一些 Perl 的基礎(chǔ)知識(shí),
- 并且?guī)椭沐塾斡谑S嗟拇罅?Perl 文檔。
- 為了便于閱讀,Perl 手冊(cè)被分成了一下幾個(gè)部分:
- 概述
- perl Perl 概述(本文檔)
- perlintro 為初學(xué)者準(zhǔn)備的 Perl 簡(jiǎn)介
- perltoc Perl 文檔目錄
- activeperl ActivePerl 概述
- 教程
- perlreftut Perl 引用簡(jiǎn)介
- perldsc Perl 數(shù)據(jù)結(jié)構(gòu)介紹
- perllol Perl 高級(jí)數(shù)據(jù)結(jié)構(gòu): 數(shù)組的數(shù)組(二維數(shù)組)
- perlrequick Perl 正則表達(dá)式快速入門
- perlretut Perl 正則表達(dá)式教程
- perlboot Perl OO 入門教程
- perltoot Perl OO 教程(一)
- perltooc Perl OO 教程(二)
- perlbot Perl OO 高級(jí)技巧與實(shí)例
- perlstyle Perl 程序風(fēng)格指南
- perlcheat Perl 功能簡(jiǎn)表
- perltrap Perl 陷阱
- perldebtut Perl 調(diào)試教程
- perlfaq Perl 常見問題(FAQ)
- perlfaq1 普通問題
- perlfaq2 開始使用和學(xué)習(xí) Perl 時(shí)碰到的問題
- perlfaq3 編程工具
- perlfaq4 數(shù)據(jù)操作
- perlfaq5 文件和格式
- perlfaq6 正則表達(dá)式
- perlfaq7 Perl 語言問題
- perlfaq8 系統(tǒng)交互
- perlfaq9 網(wǎng)絡(luò)編程
- 參考手冊(cè)
- perlsyn Perl 語法
- perldata Perl 數(shù)據(jù)結(jié)構(gòu)
- perlop Perl 操作符和優(yōu)先級(jí)
- perlsub Perl 子程序
- perlfunc Perl 內(nèi)建函數(shù)
- perlopentut Perl open() 教程
- perlpacktut Perl pack() 和 unpack() 教程
- perlpod Perl POD 文檔
- perlpodspec Perl POD 文檔格式說明
- perlrun Perl 運(yùn)行和選項(xiàng)
- perldiag Perl 診斷信息
- perllexwarn Perl 警告
- perldebug Perl 調(diào)試
- perlvar Perl 預(yù)定義變量
- perlre Perl 正則表達(dá)式高級(jí)教程
- perlreref Perl 正則表達(dá)式快速參考
- perlref Perl 引用高級(jí)教程
- perlform Perl 格式
- perlobj Perl 對(duì)象
- perltie Perl 綁定(將對(duì)象隱藏在普通變量背后)
- perldbmfilter Perl DBM 過濾器
- perlipc Perl 進(jìn)程間通信
- perlfork Perl fork() 說明
- perlnumber Perl 數(shù)字符號(hào)
- perlthrtut Perl 線程教程
- perlothrtut 以前的 Perl 線程教程
- perlport Perl 移植手冊(cè)
- perllocale Perl 區(qū)域支持
- perluniintro Perl Unicode 介紹
- perlunicode Perl Unicode 支持
- perlebcdic 考慮將 Perl 運(yùn)行在 EBCDIC 編碼的平臺(tái)上
- perlsec Perl 安全
- perlmod Perl 模塊編程: 入門教程
- perlmodlib Perl 模塊編程: 如何書寫并使用一個(gè)新模塊
- perlmodstyle Perl 模塊編程: 編寫模塊的規(guī)范
- perlmodinstall Perl 模塊編程: 如何安裝一個(gè) CPAN 上發(fā)布的模塊
- perlnewmod Perl 模塊編程: 準(zhǔn)備發(fā)布自己的模塊
- perlutil Perl 打包、發(fā)布工具
- perlcompile Perl 編譯器套件介紹
- perlfilter Perl source filters
- Perl 內(nèi)部實(shí)現(xiàn)和 C 語言接口
- perlembed 嵌入 Perl 到你的 C/C++ 程序中去
- perldebguts Perl debugging guts and tips
- perlxstut Perl XS 教程
- perlxs Perl XS 編程接口(API)
- perlclib C 標(biāo)準(zhǔn)庫的 Perl 替代
- perlguts 使用 Perl 內(nèi)部函數(shù)擴(kuò)展 Perl
- perlcall 從 C 中調(diào)用 Perl 時(shí)的約定
- perlapi Perl API 一覽
- perlintern Perl 內(nèi)部函數(shù)
- perliol C API for Perl's implementation of IO in Layers
- perlapio Perl 內(nèi)部 IO 抽象接口
- perlhack Perl 黑客指南
- 雜項(xiàng)
- perlbook Perl 書籍訊息
- perltodo Perl 未來展望
- perldoc Look up Perl documentation in Pod format
- perlhist Perl 修改記錄
- perldelta 相對(duì)于前一個(gè)版本的修改
- perl586delta 5.8.6 版所做的修改
- perl585delta 5.8.5 版所做的修改
- perl584delta 5.8.5 版所做的修改
- perl583delta 5.8.3 版所做的修改
- perl582delta 5.8.2 版所做的修改
- perl581delta 5.8.1 版所做的修改
- perl58delta 5.8.0 版所做的修改
- perl573delta 5.7.3 版所做的修改
- perl572delta 5.7.2 版所做的修改
- perl571delta 5.7.1 版所做的修改
- perl570delta 5.7.0 版所做的修改
- perl561delta 5.6.1 版所做的修改
- perl56delta 5.6 版所做的修改
- perl5005delta 5.005 版所做的修改
- perl5004delta 5.004 版所做的修改
- activeperl-release ActivePerl 發(fā)布日志
- activeperl-changes ActivePerl 修訂歷史
- perlartistic Perl Artistic License
- perlgpl GNU GPL 許可協(xié)議內(nèi)容
- 語言相關(guān)
- perlcn Perl 簡(jiǎn)體中文簡(jiǎn)介(采用 EUC-CN 編碼)
- perljp Perl 日文簡(jiǎn)介(采用 EUC-JP 編碼)
- perlko Perl 朝鮮文簡(jiǎn)介(采用 EUC-KR 編碼)
- perltw Perl 繁體中文簡(jiǎn)介(采用 Big5 編碼)
- 平臺(tái)相關(guān)
- perlaix AIX 平臺(tái)說明
- perlamiga AmigaOS 平臺(tái)說明
- perlapollo Apollo DomainOS 平臺(tái)說明
- perlbeos BeOS 平臺(tái)說明
- perlbs2000 POSIX-BC BS2000 平臺(tái)說明
- perlce WinCE 平臺(tái)說明
- perlcygwin Cygwin 平臺(tái)說明
- perldgux DG/UX 平臺(tái)說明
- perldos DOS 平臺(tái)說明
- perlepoc EPOC 平臺(tái)說明
- perlfreebsd FreeBSD 平臺(tái)說明
- perlhpux HP-UX 平臺(tái)說明
- perlhurd Hurd 平臺(tái)說明
- perlirix Irix 平臺(tái)說明
- perlmachten Power MachTen 平臺(tái)說明
- perlmacos Mac OS (Classic) 平臺(tái)說明
- perlmacosx Mac OS X 平臺(tái)說明
- perlmint MiNT 平臺(tái)說明
- perlmpeix MPE/iX 平臺(tái)說明
- perlnetware NetWare 平臺(tái)說明
- perlopenbsd OpenBSD 平臺(tái)說明
- perlos2 OS/2 平臺(tái)說明
- perlos390 OS/390 平臺(tái)說明
- perlos400 OS/400 平臺(tái)說明
- perlplan9 Plan 9 平臺(tái)說明
- perlqnx QNX 平臺(tái)說明
- perlsolaris Solaris 平臺(tái)說明
- perltru64 Tru64 平臺(tái)說明
- perluts UTS 平臺(tái)說明
- perlvmesa VM/ESA 平臺(tái)說明
- perlvms VMS 平臺(tái)說明
- perlvos Stratus VOS 平臺(tái)說明
- perlwin32 Windows 平臺(tái)說明
- 如果你使用的是類 UNIX 系統(tǒng),那么上述手冊(cè)頁默認(rèn)情況下安裝在
- /usr/local/man/ 目錄。
- 除此之外,還有大量的 Perl 模塊的文檔。這些附加文檔默認(rèn)被放置在
- /usr/local/lib/perl5/man 目錄或者是 Perl 庫目錄下的 man 子目錄
- 這里邊有一部分附加文檔是 Perl 的標(biāo)準(zhǔn)發(fā)布包中自帶的,其余則是自行安裝的
- 第三方模塊的文檔。
- 譯者注:如果你使用的是 windows 平臺(tái)下的 ActiveState Perl,并且安裝在了
- C:\Perl,那么上述手冊(cè)頁的 html 版本都在 C:\Perl\html 目錄,pod 版本則在
- C:\Perl\lib\pod 目錄。如果你是用 .msi 安裝包形式安裝的話,安裝包就會(huì)在
- [開始] -> [程序] -> [ActiveState ActivePerl 5.x] -> [Documentation] 這
- 位置生成一個(gè)快捷方式,你點(diǎn)擊它就可以瀏覽所有的 ActivePerl 文檔。
- 在類 UNIX 環(huán)境下,通過正確設(shè)置相應(yīng)的系統(tǒng)文件,或者修改 MANPATH
- 環(huán)境變量, 你可以使用 man(1) 程序來打開手冊(cè)頁。
- 用以下命令可以知道你的 Perl 手冊(cè)頁被安裝到了什么地方:
- perl -V:man.dir
- 如果返回結(jié)果中包含有一個(gè)常用的部分,比如是 /usr/local/man/man1 和
- /usr/local/man/man3, 那么你只需要添加 (/usr/local/man) 到你的 man(1)
- 的配置文件或者 MANPATH 環(huán)境變量中。
- 如果返回結(jié)果不包括這些常用目錄,那你只好將每一行都添加到 man(1) 的配置
- 文件或者 MANPATH 環(huán)境變量了。
- 此外,你還可以用 Perl 自帶的 perldoc 腳本來瀏覽 Perl 手冊(cè)頁或者模塊
- 文檔。(譯者注:在 windows 平臺(tái)下,因?yàn)闆]有 man 命令,所以要想在命令行下
- 瀏覽 Perl 文檔,那么這是唯一的方式。)
- 如果你的程序不能正確工作而你又不知道該去看哪個(gè)手冊(cè)頁,那么請(qǐng)?jiān)囈幌?-w
- 命令行選項(xiàng),它通常會(huì)給你一個(gè)相對(duì)準(zhǔn)確的信息以指出到底是哪兒出了麻煩。
- 說明
- Perl 可以輕易的實(shí)現(xiàn)掃描任意文本文件、從中提取有用的信息、然后按照要求的
- 格式打印出報(bào)表。Perl 也是一種優(yōu)秀的系統(tǒng)管理工具。
- Perl
- 語言被設(shè)計(jì)成是“實(shí)用的”(易于使用、高效、功能豐富),而不是“華麗的”
- (簡(jiǎn)單、優(yōu)美、精致)!鹤g者注:譯文無法體現(xiàn)原文的意思,原文為 "The
- language is intended to be practical (easy to use, efficient, complete)
- rather than beautiful (tiny, elegant, minimal)."』
- 據(jù)作者來看,Perl 結(jié)合了 C、sed、awk、sh 等一些工具的許多優(yōu)秀特性。
- 這樣熟悉以上工具的人可以只花費(fèi)較少的代價(jià)就可以使用 Perl。
- (語言歷史學(xué)家們 可能還記得 csh, Pascal, 甚至還有 BASIC-PLUS.)
- 以下是 Perl 的一些特點(diǎn): 1, Perl 的表達(dá)式語法和 C 的表達(dá)式語法非常相似。
- 2, 和大多數(shù) UNIX 工具不同,Perl
- 本身不會(huì)限制你的數(shù)據(jù)大小,只要你擁有足夠的 內(nèi)存。 3, Perl
- 可以一口氣讀取整個(gè)文件的內(nèi)容并且保存到一個(gè)普通的字符串變量中。 4,
- 遞歸嵌套層數(shù)沒有限制。 5,
- 使用“哈希表(hash)”(有些資料也稱作“關(guān)聯(lián)數(shù)組(associative arrays)”) 來
- 表示表格。在必要的時(shí)候哈希表會(huì)自動(dòng)增長(zhǎng)額外的空間以免妨礙到性能。 6,
- 使用“模式匹配”來快速掃描大量數(shù)據(jù)。 7, Perl
- 也可以和二進(jìn)制數(shù)據(jù)打交道,通過某些技術(shù),可以使一個(gè) DBM 文件象一個(gè)
- 哈希表一樣操作。 8, 出于 setuid 方式運(yùn)行的 Perl 腳本要比同樣的 C
- 程序安全,Perl 擁有一個(gè)貫穿
- 數(shù)據(jù)流的污染檢測(cè)系統(tǒng),這可以防止大多數(shù)令人生厭的安全漏洞。
- 如果你碰到了一個(gè)任務(wù)需要用 sed 、 awk 或者 sh 來完成,結(jié)果卻發(fā)現(xiàn)
- 無法做到或者是想運(yùn)行起來更快一些,并且你又不想寫 C 程序來處理,那么 Perl
- 就 是你最好的選擇。Perl 允許你將現(xiàn)有的 sed 腳本或者 awk 腳本轉(zhuǎn)換為 Perl
- 腳本。
- 早在 1993 年(參見 perlhist)的時(shí)候, Perl 5 幾乎被完全重寫了一次,經(jīng)歷了這
- 次版本更新以后,Perl 增加了一下幾個(gè)重要特性:
- * 模塊化和可重用的編程思想,以及無數(shù)的模塊。
- 在 perlmod、 perlmodlib 和 perlmodinstall 中有介紹。
- * 嵌入和擴(kuò)展
- 在 perlembed, perlxstut, perlxs, perlcall, perlguts, 和xsubpp
- 中有介紹。
- * 變量綁定(包含許多關(guān)聯(lián)的 DBM 工具)
- 在perltie 和 AnyDBM_File 中介紹。
- * 子程序可以被重載、自動(dòng)加載、指定原型
- 在 perlsub 中介紹。
- * 任意嵌套的數(shù)據(jù)結(jié)構(gòu)和匿名子程序
- 在 perlreftut, perlref, perldsc, 和 perllol 中介紹。
- * 面向?qū)ο缶幊?br />
- 在 perlobj, perlboot, perltoot, perltooc, 和 perlbot 中介紹。
- * 支持“輕量級(jí)進(jìn)程”(線程)
- 在 perlthrtut 和 threads 中介紹。
- * 支持 Unicode, 國(guó)際化, 區(qū)域化
- 在 perluniintro, perllocale 和 Locale::Maketext 中介紹。
- * 詞法作用域
- 在 perlsub 中介紹。
- * 增強(qiáng)了正則表達(dá)式功能
- 在 perlre 中介紹,增加的示例參見 perlop。
- * 增強(qiáng)了調(diào)試器和交互式環(huán)境,可以集成外部編輯器。
- 在 perldebtut, perldebug 中 perldebguts 介紹。
- * POSIX 1003.1 兼容庫
- 參見 POSIX。
- 好了,有了以上這些宣傳,我想*肯定*已經(jīng)足夠了。
- 可用性
- 在大多數(shù)操作系統(tǒng)上 Perl 都是可用的。實(shí)際上所有類 UNIX 平臺(tái)都是可用的。
- 詳情參見 "Supported Platforms" "Supported Platforms" in perlport,
- 那里有一個(gè)清單。
- 運(yùn)行環(huán)境
- 參見 perlrun.
- 作者
- Larry Wall <larry@wall.org>, 以及其他許多普通人
- 如果你認(rèn)為你的 Perl 成功案例能夠幫助那些需要在他們的項(xiàng)目中使用 Perl
- 的人, 或者你想簡(jiǎn)單地表達(dá)一下你對(duì)于 Larry 以及其他 Perl
- 開發(fā)人員的謝意,那么請(qǐng)寫信 給 perl-thanks@perl.org。
- 文件
- "@INC" 定位 Perl 模塊搜索路徑
- 參見
- a2p awk 腳本到 perl 腳本的翻譯器
- s2p sed 腳本到 perl 腳本的翻譯器
- http://www.perl.org/ Perl 主頁
- http://www.perl.com/ Perl 文章(O'Reilly 維護(hù))
- http://www.cpan.org/ CPAN: 完整的 Perl 檔案網(wǎng)絡(luò)
- http://www.pm.org/ Perl Mongers
- 診斷
- 使用 "use warnings" 語句(或者 -w 命令行選項(xiàng))可以得到很多有用的診斷
- 信息。
- 查看 perldiag 可以得到所有的 Perl 診斷信息的解釋。使用 "use diagnostics"
- 語句可以自動(dòng)地將錯(cuò)誤信息轉(zhuǎn)換成更加詳細(xì)的形式。
- 編譯時(shí)產(chǎn)生的錯(cuò)誤信息可以告訴你錯(cuò)誤發(fā)生的行號(hào),以及具體出錯(cuò)的位置。
- (譯者注:因?yàn)?Perl 總是在錯(cuò)誤發(fā)生之后才會(huì)發(fā)現(xiàn)錯(cuò)誤,因此實(shí)際的錯(cuò)誤位置
- 往往要比提示的靠前一些)
- 如果 Perl 腳本是通過命令行參數(shù) -e 傳遞過去的,那么每一個(gè) -e 參數(shù)
- 將被當(dāng)作一行來計(jì)算行號(hào)。
- Setuid 腳本可以添加約束,從而產(chǎn)生類似于“Insecure dependency”
- (不安全的依賴) 之類的消息。參見 perlsec。
- 我們是不是應(yīng)該提倡在每個(gè)程序中都使用 -w 開關(guān)呢?
- BUGS
- -w 命令行選項(xiàng)不是強(qiáng)制的。
- Perl 的有些操作是和你的機(jī)器相關(guān)的,比如 type casting(類型轉(zhuǎn)換)、
- atof() 操作、還有使用 sprintf() 進(jìn)行浮點(diǎn)數(shù)的輸出,等等。
- 如果你的標(biāo)準(zhǔn)輸入輸出庫需要在每次讀或者寫操作之后移動(dòng)文件指針,那么 Perl
- 中會(huì) 同樣如此,但是 sysread() 和 syswrite() 函數(shù)中不會(huì)這樣。
- 盡管沒有一種內(nèi)建數(shù)據(jù)類型的尺寸會(huì)受到除了物理內(nèi)存大小之外的其它任何限制,
- 但 是仍然有一些東西在制約著你:變量名的長(zhǎng)度不能超過 251
- 個(gè)字母;另外,診斷時(shí)顯示 出來的行號(hào)在 Perl
- 內(nèi)部是使用短整型存儲(chǔ)的,因此最大不能超過 65535(超過這個(gè)數(shù)
- 之后將發(fā)生環(huán)繞)。
- 你可以將你發(fā)現(xiàn)的 bug 匯報(bào)到
- perlbug@perl.org。不過最好附上一份完整的配置信 息,perl 源代碼樹中的
- myconfig 可以幫你做這件事,或者用 "perl -V" 也行。如果 你成功地編譯了
- Perl,那么你可以在 utils/ 目錄下找到 perlbug 腳本,它可 以幫助你郵寄一份
- bug 報(bào)表。
- Perl
- 事實(shí)上是一個(gè)“夭折的垃圾列表器”,但是千萬不要告訴任何人我這么說過。^_^
- 注意事項(xiàng)
- Perl 的格言是“條條大路通羅馬”(There's more than one way to do
- it.),具 體有多少作為練習(xí)留給讀者去猜測(cè)好了。
- 程序員的三種主要美德是:懶惰、急躁和傲慢。至于為什么這么說請(qǐng)參考駱駝書。
- TRANSLATORS
- 王興華 "flw" <flw@cpan.org>
復(fù)制代碼
[ 本帖最后由 flw 于 2006-6-9 15:30 編輯 ] |
|