我們通常通過 google 來查詢 Linux 中的命令說明,但是其實還有一個更好的辦法:那就是通過 Linux 自帶的 man 幫助頁來查詢命令詳盡完整的使用說明。
man 頁面的歷史本身比 Linux 還長,可以追溯到 Unix 早期那個年代。 通過這個 Wikipedia 可以知道,Dennis Ritchie 和 Ken Thompson 在 1971 年寫了第一個 man 幫助頁,那個年代的計算器使用的還是像烤箱一樣的計算機,個人電腦還未出世。man 幫助頁也有它自己的一套設計精鍊的語法,和 Unix 與 Linux 一樣,man 幫助頁也不是一成不變的,它就像 Linux 核心一樣不停地發展更新。
Man 幫助頁通過數字識別符號來分成不同型別的內容:

一般使用者命令
系統呼叫命令
庫函式
特殊的檔案和驅動程式
檔案格式
遊戲和屏保
雜項
系統管理命令和守護程序

儘管如此,使用者一般也不需要知道他們想查詢的命令是屬於哪一個型別的。
這些檔案格式化的方式在當今許多使用者看來有點古怪。因為最開始他們是用 trooff 的方式,通過 PostScript 印表機來列印,所以包含了頭部和布局方面的格式化資訊。在 Linux 中,取而代之使用了一種叫做 groff 的方法。
在我的 Fedora 系統中,man 幫助頁相關的檔案儲存在 /usr/share/man 下的子目錄中(比如 man1 儲存第一部分的命令),還有進一步的子目錄用於儲存 man 幫助頁的翻譯。
如果你在 Shell 中查詢 man 命令的 man 幫助頁,你時間看到將是 gzip 工具壓縮的 man.1.gz 檔案。想要查詢 man 幫助頁,需要輸入類似如下命令:

man man

這個例子會顯示 man 命令的 man 幫助頁,這將先解壓 man 幫助頁檔案,然後解釋格式化指令並用 less 顯示結果,所以導航操作和在 less 中一樣。
所有的 man 幫助頁都應該顯示這些子段落:Name、 Synopsis、 Description、Examples、See、Also。有些還會新增一些額外的子段落,比如 Options、 Exit、Status、 Environment、Bugs、Files、Author、Reporting、Bugs、History、Copyright。
詳細說明一個 man 幫助頁
為了更詳細地介紹一個典型的 man 幫助頁,就用 ls 命令的幫助頁來分析吧,在 Name 分段下,我們可以看到如下內容:

ls – list directory contents

它會簡要地告訴我 ls 這條命令的作用.
在 Synopsis 分段下,我們可以看到如下的內容:

ls [OPTION]… [FILE]…

任何在中括號中的元素都是可選的。你可以只輸入 ls 命令,後面不接任何引數。引數後面的省略號表示你可以新增任意多個彼此相容的引數,以及許多檔名。對於 [FILE] 引數,你可以指定具體的目錄名,或者可以使用萬用字元 *,比如這個例子,它會顯示 Documents 資料夾下的 .txt 檔案:

ls Documents/*.txt

在 Description 分段下, 我們可以看到關於這條命令更加詳細的資訊,還有關於這條命令各個引數作用的詳細介紹的列表,比如說 ls 命令第一個選項 -a 引數,它的作用是顯示包括隱藏檔案/目錄在內的所有檔案:

-a, –all

如果我們想用這些引數,要麼用它們的別名,比如 -a,要麼用它們的全名,比如 –all(兩條中劃線)。然而並不是所有引數都有全名和別名(比如 –author 只有一種),而且兩者的名字並不總是相互關聯的(-F 和 –classify)。當你想用多個引數時,要麼以空格隔開,要麼共用一個連字元 -,在連字元後連續輸入你需要的引數(不要新增空格)。比如下面兩個等價的例子:

ls -a -d -l

ls -adl

但是 tar 這個命令有些例外,由於一些歷史遺留原因,當引數使用別名時可以不用新增連字元 -,因此以下兩種命令都是合法的:

tar -cvf filearchive.tar thisdirectory/

tar cvf filearchive.tar thisdirectory/

ls 的 Description 分段後是 Author、Reporting Bugs、Copyright、 See Also 等分段。
See Also 分段會提供一些相關的 man 幫助頁,沒事的話可以看看。畢竟除了命令外還有許多其他型別的 man 幫助頁。
有一些命令不是系統命令,而是 Bash 特有的,比如 alias 和 cd。這些 Bash 特有的命令可以在 BASH_BUILTINS man 幫助頁中檢視,和上面的比起來它們的描述更加精鍊,不過內容都是類似的。
其實通過 man 幫助頁讓你可以獲得大量有用的資訊,特別是當你想用一個已經很久沒用過的命令,需要複習下這條命令的作用時。這個時候 man 幫助頁飽受非議的簡潔性反而對你來說是更好的。