我們已經用過幾個命令了,但是我們會發現,命令有選項,并且將來會有越來越多其他的命令。當我們通過各種渠道了解到某個命令的時候,我們第一反應就是這個命令能做什么,怎么做,當然,求助搜索引擎的確是一個不錯的選擇,不過某些時候我們需要更快的在第一時間對某個命令有一個大概的認識,那么我們就需要知道“命令的幫助命令”。
首先,命令可以有多種存在形式,它可以是bin/sbin目錄下的二進制文件,可以是一個shell內置的命令,可以是一段shell腳本,甚至一個命令的別名。不管是什么形式,命令就是一段計算機能夠理解的指令。
既然命令有諸多類別,那么我們或許需要先知道我們想要了解的命令屬于哪個類別。
命令類別查看命令:type
示例:type 命令
不妨先查看一下type命令本身

可以看到,type是一個shell內置的命令
再看看常用的“ls”

呃,看起來“ls”是一個別名,可以添加顏色區分文件類型。
再看看“passwd”

喔,看來“passwd”是一個位于bin下的命令
好了,已經知道了命令的類型,還需要進一步知道命令的作用
命令幫助命令:man
man是manual的縮寫,要是記憶”男人“方便點的話,那就當man記吧
示例:man 目標命令,先看一下man本身

man可以稱作是一個系統幫助手冊的分頁程序,圖上的紅框內,注明了不同頁面包含的章節。可以這么理解,圖上的1~9分別對應了同一個命令在不同情境下的使用方法,比如某些命令需要關聯文件,那么在查看幫助的時候就可以使用"man [編號] 命令",查看對應的幫助,passwd就是這樣的一個命令。當我們不指定編號的時候,man默認查找編號1的命令幫助,也就是“可執行程序或者shell命令”的幫助。但是,并不是每個命令都有1~9九種級別的幫助,添加“-f”選項可以看到命令有哪些級別的幫助,同時,man -f還有一個自帶的別名whatis。
查看命令所有級別的幫助man -f(whatis)

可以看到passwd命令含有1和5兩種級別的幫助信息,除了包含passwd命令的使用幫助,還包含了passwd文件的幫助信息。
好了,最常用的cd命令總要查看一下吧

啊,這么一大堆,而且看起來很亂,看上去直接和“cd“命令相關的信息還不多,往下翻一翻,喔,找到了!

但是,查看”cd“命令的幫助,好像查看的不僅是”cd“命令的幫助,man cd鍵入之后,幫助的”NAME“項對應了很多命令名,他們之中有cd,還有其他很多。他們都是shell內置的命令。
查看內部命令的幫助:help
示例: help 命令名,以cd為例

這樣看起來就清晰多了,就好像從剛才的內置命令手冊中直接抓取需要的部分一樣。
好了,我們知道了查看命令類型,查看命令使用詳細,命令的級別,那么,這個命令到底放在哪里呢?
命令查找命令:which
示例:which 命令名,但是which只能查看可執行程序所在的位置,不包括內置命令,如果命令包括別名,那么同時會把別名展示出來
當查看內部命令的時候,會提示沒有查找到。

查看”ls“,同時顯示命令的別名。

另一個命令查找命令:whereis
示例:whereis 命令名,和which命令的功能類似,但是使用whereis不限于可執行程序,而且還會把命令相關的文檔的位置打印出來。
好了,目前來說,我相信幫助命令已經能幫到你了,但是,幫助命令雖然強大,總是抵不過我們的遺忘。
*如果某些個命令我記不大清楚了,這樣就算我知道幫助命令也查不了了…
針對這一點,man -k 可以幫到我們,他們幫我們搜索幫助手冊,找到我們記憶中零星的線索,同時,他還有一個別名apropos。所以至少要記住man這個幫助命令啊
命令模糊查找命令:man -k(apropos)
如果我只記得pass,模糊查找之后會把和pass相關的命令以及對應的級別顯示出來,很方便。
*我記得某個命令怎么拼寫,但是我不需要查看那么一大堆幫助說明,搜索引擎搜索也太慢,問別人顯得太low,如何逃出困境,顯得高大上?
顯示選項用法信息就好
示例:命令名 –help,如此一來,會簡約的顯示該命令的選項用法,不會長篇大論的轟炸你!但是前提是你已經很清楚這個命令是怎么使用的了

其實幫助命令和幫助信息遠不止上述這一些,GUN項目提供了info程序來提供幫助,info程序通過info文件來加載幫助信息,在其中可以通過超鏈接來定位到你需要的信息,直接鍵入info就可以進入info程序。除了info,你未來安裝的各種軟件也會提供幫助信息,他們通常會放在/usr/share/doc下。
命令已經如此之多,幫助命令也不是一個兩個,但是幫助命令的存在是為了讓你更好的使用系統,如何使用見仁見智。