本文總結(jié)概括
man命令可以查詢內(nèi)建命令與外部命令比較詳細(xì)的信息膘魄,用它就夠
如
man ls #查詢外部命令
man cd #查詢內(nèi)部命令
help只能查詢內(nèi)部命令
info顯示的信息比man更詳細(xì)
我們難免忘記一些命令或參數(shù),所以要利用好 Linux 系統(tǒng)所自帶的幫助工具與文檔
一麸塞、內(nèi)建命令與外部命令
查看 內(nèi)建命令 或 外部命令 的命令,用的工具不同!
內(nèi)建命令
如:history到忽、cd吴菠、exit 等
內(nèi)建命令實際上是 shell 程序的一部分者填,內(nèi)建命令是寫在bash源碼的builtins里面的一些比較簡單的 Linux 系統(tǒng)命令,由 shell 程序識別并在 shell 程序內(nèi)部完成運行做葵。
內(nèi)建命令執(zhí)行速度比外部命令快(通常在 Linux 系統(tǒng)加載運行時 shell 就被加載并駐留在系統(tǒng)內(nèi)存中占哟。解析內(nèi)部命令 shell 不需要創(chuàng)建子進(jìn)程)
外部命令
如:ls、vi等。
Linux 系統(tǒng)中的實用程序部分榨乎,因為實用程序的功能通常都比較強(qiáng)大怎燥,所以其包含的程序量也會很大,在系統(tǒng)加載時并不隨系統(tǒng)一起被加載到內(nèi)存中蜜暑,而是在需要時才將其調(diào)用內(nèi)存铐姚。雖然其不包含在 shell 中,但是其命令執(zhí)行過程是由 shell 程序控制的肛捍。外部命令是在 Bash 之外額外安裝的隐绵,通常放在/bin,/usr/bin拙毫,/sbin依许,/usr/sbin等等。
簡單來說就是一個是天生自帶的天賦技能恬偷,一個是后天得來附加技能悍手。
我們可以使用 type 命令來區(qū)分命令是內(nèi)建的還是外部的。
它們的結(jié)果是不同的:
type exit
type service
xxx is a shell builtin
#得到這樣的結(jié)果說明是內(nèi)建命令袍患,正如上文所說內(nèi)建命令都是在 bash 源碼中的 builtins 的.def中
xxx is /usr/sbin/xxx
#得到這樣的結(jié)果說明是外部命令坦康,正如上文所說,外部命令在/usr/bin or /usr/sbin等等中
xxx is an alias for xx --xxx
#得到alias的結(jié)果诡延,說明該指令為命令別名所設(shè)定的名稱
二滞欠、幫助命令的使用
1. help 命令
bash 中內(nèi)置了 help 命令
help 命令只能用于顯示 shell 內(nèi)建命令的簡要幫助信息。幫助信息中顯示有該命令的簡要說明以及一些參數(shù)的使用以及說明
help exit #exit肆良,cd 等是內(nèi)建命令
外部命令的話基本上都有一個參數(shù)--help,這樣就可以得到相應(yīng)的的幫助
ls --help
2. man 命令
嘗試下這個命令
man ls
man 可查看 內(nèi)建命令 外部命令
因為 man 工具是顯示系統(tǒng)手冊頁中的內(nèi)容筛璧,這些內(nèi)容基本都是對命令的解釋信息和相關(guān)的描述。
man 得到的內(nèi)容比用 help 更多更詳細(xì)
查看系統(tǒng)文檔中的 man 能得到程序的更多信息和 Linux 的更多特性惹恃。
詳細(xì)描述的查詢方式 用 man
只是忘記用什么參數(shù)時夭谤,用help 顯示簡單扼要的信息。
如圖最左上角顯示“ LS (1)”
“ LS ”表示手冊名稱
“(1)”表示該手冊位于第一章節(jié)巫糙。
在 man 手冊中一共有這么幾個章節(jié):
1 Standard commands (標(biāo)準(zhǔn)命令)
2 System calls (系統(tǒng)調(diào)用)
3 Library functions (庫函數(shù))
4 Special devices (設(shè)備說明)
5 File formats (文件格式)
6 Games and toys (游戲和娛樂)
7 Miscellaneous (雜項)
8 Administrative Commands (管理員命令)
9 其他(Linux特定的)朗儒, 用來存放內(nèi)核例行程序的文檔。
打開手冊之后我們可以通過 pgup 與 pgdn 或者上下鍵來上下翻看
按 q 退出當(dāng)前頁面
3. info 命令
要是你覺得man顯示的信息都還不夠参淹,滿足不了你的需求醉锄,那試試這個命令
info ls #一般的 bash 會自帶info命令
info 來自自由軟件基金會的 GNU 項目,是 GNU 的超文本幫助系統(tǒng)浙值,能夠更完整的顯示出 GNU 信息恳不。所以得到的信息比 man 還要多!
若 man 頁包含的某個工具的概要信息在 info 中也有介紹开呐,那么 man 頁中會有“請參考 info 頁更詳細(xì)內(nèi)容”的字樣烟勋。