perldoc - 以 Pod 格式查詢 Perl 文件。
perldoc [-h] [-D] [-t] [-u] [-m] [-l] [-U] [-F]
[-i] [-V] [-T] [-r]
[-d destination_file]
[-o formatname]
[-M FormatterClassName]
[-w formatteroption:value]
[-n nroff-replacement]
[-X]
[-L language_code]
PageName|ModuleName|ProgramName|URL
範例
perldoc -f BuiltinFunction
perldoc -L it -f BuiltinFunction
perldoc -q FAQ Keyword
perldoc -L fr -q FAQ Keyword
perldoc -v PerlVariable
perldoc -a PerlAPI
有關開關的更多說明,請見下方。
perldoc 查詢嵌入在 perl 安裝樹或 perl 腳本中的 .pod 格式文件,並使用各種格式化程式顯示。這主要用於 perl 函式庫模組的文件。
您的系統也可能安裝了這些模組的手冊頁,這種情況下您可能只需要使用 man(1) 命令即可。
如果您正在尋找 Perl 函式庫模組文件的目錄,請參閱 perltoc 頁面。
列印簡短的help 訊息。
D詳述搜尋項目。
使用純文字轉換器顯示文件,而非 nroff。這樣可能會比較快,但可能看起來沒那麼漂亮。
略過實際的 Pod 格式化,僅顯示原始 Pod 來源 (Unformatted)。
顯示整個模組:程式碼和未格式化的 pod 文件。如果文件無法詳細說明函式,而您想直接檢查程式碼,這可能會很有用;perldoc 會為您找到檔案,並直接傳遞以供顯示。
僅顯示找到的模組的檔案名稱。
以超級使用者身分執行時,請勿嘗試放棄權限以確保安全性。此選項會暗示 -F。
注意:請參閱下方的安全性標題以取得更多資訊。
將參數視為檔案名稱;不會在目錄中執行搜尋。如果以超級使用者身分執行,則會暗示 -U。
-f 選項後接 perl 內建函式的名稱,將從 perlfunc 擷取此函式的文件。
範例
perldoc -f sprintf
-q 選項採用正規表示式作為參數。它會搜尋 perlfaq[1-9] 中的question 標題,並列印符合正規表示式的項目。
範例
perldoc -q shuffle
-a 選項後接 perl api 函式的名稱,將從 perlapi 擷取此函式的文件。
範例
perldoc -a newHV
-v 選項後接 Perl 預定義變數的名稱,將從 perlvar 擷取此變數的文件。
範例
perldoc -v '$"'
perldoc -v @+
perldoc -v DATA
這指定輸出不應傳送至呼叫器,而應直接傳送至 STDOUT。
這指定輸出不應傳送至呼叫器或 STDOUT,而應儲存至指定的檔案名稱。範例:perldoc -oLaTeX -dtextwrapdocs.tex Text::Wrap
這指定您希望 Perldoc 嘗試使用 Pod 格式化類別來輸出您指定的格式。例如:-oman
。這實際上只是 -M
開關的包裝器;使用 -oformatname
只會透過將該格式名稱(大小寫不同)新增至不同的類別名稱字首結尾來尋找可載入的類別。
例如,-oLaTeX
目前會嘗試所有以下類別:Pod::Perldoc::ToLaTeX Pod::Perldoc::Tolatex Pod::Perldoc::ToLatex Pod::Perldoc::ToLATEX Pod::Simple::LaTeX Pod::Simple::latex Pod::Simple::Latex Pod::Simple::LATEX Pod::LaTeX Pod::latex Pod::Latex Pod::LATEX。
這指定您希望嘗試用來格式化 pod 的模組。該類別至少必須提供 parse_from_file
方法。例如:perldoc -MPod::Perldoc::ToChecker
。
您可以透過逗號或分號將它們結合起來,來指定多個要嘗試的類別,例如 -MTk::SuperPod;Tk::Pod
。
這指定一個選項來呼叫格式化器 w。例如,-w textsize:15
會在使用格式化器物件來格式化物件之前,在格式化器物件上呼叫 $formatter->textsize(15)
。為了使這有效,格式化器類別必須提供此方法,而且您傳遞的值必須有效。(因此,如果 textsize
預期一個整數,而您執行 -w textsize:big
,就會發生問題。)
您可以使用 -w optionname
(沒有值)作為 -w optionname:TRUE
的簡寫。這可能在開/關功能中很有用,例如:-w page_numbering
。
您可以使用「=」取代「:」,例如:-w textsize=15
。這可能會更(或較不)方便,視您使用的 shell 而定。
如果存在索引,請使用索引。-X 選項會在檔案 $Config{archlib}/pod.idx
中尋找基本名稱與命令列上提供的名稱相符的項目。pod.idx 檔案應包含完全限定的檔名,每行一個。
這允許您指定所需語言翻譯的語言代碼。如果您的系統中未安裝 POD2::<language_code>
套件,則會忽略此開關。所有可用的翻譯套件都可以在 POD2::
名稱空間中找到。請參閱 POD2::IT(或 POD2::FR)以了解如何建立新的在地化 POD2::*
文件套件,並將它們整合到 Pod::Perldoc 中。
您要查詢的項目。巢狀模組(例如 File::Basename
)指定為 File::Basename
或 File/Basename
。您也可以提供頁面的描述性名稱,例如 perlfunc
。對於 URL,目前僅支援 HTTP 和 HTTPS。
對於「foo」等簡單的名稱,當一般搜尋找不到相符的頁面時,也會嘗試搜尋「perl」前綴。因此,輸入「perldoc intro」就足以找到/呈現「perlintro.pod」。
指定 groff 的替換。
遞迴搜尋。
忽略大小寫。
顯示您正在執行的 perldoc 版本。
由於 perldoc 無法正確執行污染,且已知有安全性問題,因此當以超級使用者身分執行時,它會嘗試透過將有效和實際 ID 設定為 nobody 或 nouser 帳戶,或在不可用時設定為 -2 來放棄權限。如果它無法放棄其權限,它將不會執行。
如果您不想要此行為,請參閱 -U
選項,但請注意如果您選擇使用 -U
,會有重大的安全性風險。
自 3.26 以來,以超級使用者身分使用 -F
也表示 -U
,因為開啟大多數檔案和瀏覽目錄需要高於 nobody/nogroup 層級的權限。
PERLDOC
環境變數中的任何開關都將在命令列引數之前使用。
PERLDOC
的有用值包括 -oterm
、-otext
、-ortf
、-oxml
等,具體取決於您手邊有哪些模組;或者格式化程式類別可以用 -MPod::Perldoc::ToTerm
或類似的程式碼明確指定。
perldoc
也會搜尋由 PERL5LIB
(或未定義 PERL5LIB
時的 PERLLIB
)和 PATH
環境變數指定的目錄。(後者是為了讓可執行檔的嵌入式 pod,例如 perldoc
本身,可用。)
在存在 Makefile.PL
或 Build.PL
的目錄中,perldoc
會先將 .
和 lib
新增到其搜尋路徑中,只要您不是超級使用者,它也會新增 blib
。如果您在建置目錄中工作,並且想要閱讀文件,即使您先前已安裝某個模組版本,這也會非常有幫助。
perldoc
會依序使用 PERLDOC_PAGER
、MANPAGER
或 PAGER
中定義的換頁程式,再自行尋找換頁程式。(如果已指示 perldoc
顯示純文字或未格式化的 pod,則不會使用 MANPAGER
。)
在 -m
模式(顯示模組原始碼)中使用 perldoc 時,perldoc
會嘗試使用 PERLDOC_SRC_PAGER
中設定的換頁程式。這個指令的一個有用設定是您最喜歡的編輯器,例如 /usr/bin/nano
。(別批評我。)
PERLDOC_PAGER
的一個有用值是 less -+C -E
。
將 PERLDOCDEBUG 設定為正整數會讓 perldoc 發出比 -D
開關更詳盡的輸出;數字越大,發出的內容越多。
在 3.14_05 之前,開關 -v 用於產生 perldoc 執行作業的詳細訊息,現在則由 -D 啟用。
目前的維護者:Mark Allen <mallen@cpan.org>
過去的貢獻者包括:brian d foy <bdfoy@cpan.org>
Adriano R. Ferreira <ferreira@cpan.org>
、Sean M. Burke <sburke@cpan.org>
、Kenneth Albanowski <kjahds@kjahds.com>
、Andy Dougherty <doughera@lafcol.lafayette.edu>
,以及許多其他人。