12 得到命令文件

2022-03-28 06:37:40 字數 3119 閱讀 6121

知道了什麼是命令,現在我們來尋找每一類命令的可得到的文件。

bash 有乙個內建的幫助工具,可供每乙個 shell 內部命令使用。輸入「help」,接著是 shell 內部命令名。例如:

[me@linuxbox ~]$ help cd

cd: cd [-l|-p] [dir]

change ...

注意表示法:出現在命令語法說明中的方括號,表示可選的專案。乙個豎槓字元 表示互斥選項。在上面 cd 命令的例子中:

cd [-l|-p] [dir]

這種表示法說明,cd 命令可能有乙個「-l」選項或者「-p」選項,進一步,可能有引數「dir」。

雖然 cd 命令的幫助文件很簡潔準確,但它決不是教材。正如我們所看到的,它似乎提到了許多 我們還沒有談論到的東西!不要擔心,我們會學到的。

許多可執行程式支援乙個 --help 選項,這個選項是顯示命令所支援的語法和選項說明。例如:

[me@linuxbox ~]$ mkdir --help

usage: mkdir [option] directory...

create ...

一些程式不支援 --help 選項,但不管怎樣試一下。這經常會導致輸出錯誤資訊,但同時能 揭示一樣的命令用法資訊。

許多希望被命令列使用的可執行程式,提供了乙個正式的文件,叫做手冊或手冊頁(man page)。乙個特殊的叫做 man 的分頁程式,可用來瀏覽他們。它是這樣使用的:

man program

「program」是要瀏覽的命令名。

手冊文件的格式有點不同,一般地包含乙個標題,命令語法的綱要,命令用途的說明, 和命令選項列表,及每個選項的說明。然而,通常手冊文件並不包含例項,它打算 作為一本參考手冊,而不是教材。作為乙個例子,瀏覽一下 ls 命令的手冊文件:

[me@linuxbox ~]$ man ls

在大多數 linux 系統中,man 使用 less 工具來顯示參考手冊,所以當瀏覽文件時,你所熟悉的 less 命令都能有效。

表6-1: 手冊頁的組織形式

章節內容

1使用者命令

2程式介面核心系統呼叫

3c 庫函式程式介面

4特殊檔案,比如說裝置結點和驅動程式

5檔案格式

6遊戲娛樂,如螢幕保護程式

7其他方面

8系統管理員命令

有時候,我們需要檢視參考手冊的特定章節,從而找到我們需要的資訊。 如果我們要查詢一種檔案格式,而同時它也是乙個命令名時,這種情況尤其正確。 沒有指定章節號,我們總是得到第乙個匹配項,可能在第一章節。我們這樣使用 man 命令, 來指定章節號:

man section search_term

例如:

[me@linuxbox ~]$ man 5 passwd

命令執行結果會顯示檔案 /etc/passwd 的檔案格式說明手冊。

[me@linuxbox ~]$ apropos floppy

create_floppy_devices (8) - udev callout to create all possible

...

輸出結果每行的第乙個欄位是手冊頁的名字,第二個字段展示章節。注意,man 命令加上」-k」選項, 和 apropos 完成一樣的功能。

whatis 程式顯示匹配特定關鍵字的手冊頁的名字和一行命令說明:

最晦澀難懂的手冊頁

正如我們所看到的,linux 和類 unix 的系統提供的手冊頁,只是打算作為參考手冊使用, 而不是教材。許多手冊頁都很難閱讀,但是我認為由於閱讀難度而能拿到特等獎的手冊頁應該是 bash 手冊頁。因為我正在為這本書做我的研究,所以我很仔細地瀏覽了整個 bash 手冊,為的是確保我講述了 大部分的 bash 主題。當把 bash 參考手冊整個列印出來,其篇幅有八十多頁且內容極其緊密, 但對於初學者來說,其結構安排毫無意義。

file: coreutils.info,    node: ls invocation,    next: dir invocation,

up: directory listing

10.1 `ls': list directory contents

******************************====

...

info 程式讀取 info 檔案,info 檔案是樹型結構,分化為各個結點,每乙個包含乙個題目。 info 檔案包含超級鏈結,它可以讓你從乙個結點跳到另乙個結點。乙個超級鏈結可通過 它開頭的星號來辨別出來,把游標放在它上面並按下 enter 鍵,就可以啟用它。

輸入」info」,接著輸入程式名稱,啟動 info。下表中的命令,當顯示乙個 info 頁面時, 用來控制閱讀器。

表 6-2: info 命令

命令行為

?顯示命令幫助

pgup or backspace

pgdn or space

n下乙個 - 顯示下乙個結點

p上乙個 - 顯示上乙個結點

uup - 顯示當前所顯示結點的父結點,通常是個選單

enter

啟用游標位置下的超級鏈結q退出

到目前為止,我們所討論的大多數命令列程式,屬於 gnu 專案」coreutils」包,所以輸入:

[me@linuxbox ~]$ info coreutils

將會顯示乙個包含超級鏈結的手冊頁,這些超級鏈結指向包含在 coreutils 包中的各個程式。

許多安裝在你系統中的軟體,都有自己的文件檔案,這些檔案位於/usr/share/doc 目錄下。 這些檔案大多數是以文字檔案的形式儲存的,可用 less 閱讀器來瀏覽。一些檔案是 html 格式, 可用網頁瀏覽器來閱讀。我們可能遇到許多以」.gz」結尾的檔案。這表示 gzip 壓縮程式 已經壓縮了這些程式。gzip 軟體包包括乙個特殊的 less 版本,叫做 zless,zless 可以顯示由 gzip 壓縮的文字檔案的內容。

如何得到XML文件大小

xml文件從格式到大小都是不是確定的。有的可能只有幾行,而有的卻有好幾兆位元組。你也許會懷疑是不是需要了解 xml文件的大小。而當效能成為首要問題時,知道 xml文件大小就是件必須要作的事情了。從效能角度講,有兩類處理xml文件的方法。批量處理方式需要較短的時間,解析成組的文件。實時方式就是實時的處...

得到python預設的幫助文件

python的help文件很好,就是有時候help一下給出好幾頁來,甚至有些幫助根本就看不到了 我想應該有其他方法可以解決,只是我不想去查了 因為這個可以通過乙個很簡單的python指令碼搞定。這裡舉例為證,比如我想得到tkinter的幫助文件,在互動模式下,我可以這樣輸入 import tkint...

得到python預設的幫助文件

python的help文件很好,就是有時候help一下給出好幾頁來,甚至有些幫助根本就看不到了 我想應該有其他方法可以解決,只是我不想去查了 因為這個可以通過乙個很簡單的python指令碼搞定。這裡舉例為證,比如我想得到tkinter的幫助文件,在互動模式下,我可以這樣輸入 import tkint...