5個找出Linux中“二進(jìn)制命令”描述和系統(tǒng)中位置的方法
在數(shù)千個 Linux 系統(tǒng)上的命令/程序中,知道給定命令的類型和目的以及其在系統(tǒng)上的位置(絕對路徑)對于新手來說可能是一個挑戰(zhàn)。
知道命令/程序的一些細(xì)節(jié)不僅有助于 Linux 用戶掌握大量命令,還能使用戶理解命令行或腳本在系統(tǒng)上的操作。
因此,在本文中我們將向你解釋五個有用的命令,用于顯示給定命令的簡短描述和位置。
要在系統(tǒng)上發(fā)現(xiàn)新命令,請查看 PATH 環(huán)境變量中的所有目錄。這些目錄存儲系統(tǒng)上安裝的所有命令/程序。
一旦你找到一個有趣的命令,在繼續(xù)閱讀更多關(guān)于它的手冊頁之前,請嘗試如下收集一些簡要的信息。
假設(shè)你輸出了 PATH 的值,然后進(jìn)到其中的一個目錄 /usr/local/bin,注意到一個名為 fswatch(監(jiān)視文件修改更改)的新命令:
- $ echo $PATH$ cd /usr/local/bin
在 Linux 中找出新命令
現(xiàn)在讓我們在 Linux 中用不同的方法找出 fswatch 命令的描述和位置。
1、 whatis 命令
whatis 用于顯示你作為參數(shù)輸入的命令名的單行描述(例如下面命令中的 fswatch)。
如果描述太長,一些部分在默認(rèn)情況下會被省略,使用 -l 標(biāo)志來顯示完整的描述。
- $ whatis fswatch$ whatis -l fswatch
Linux whatis 命令示例
2、 apropos 命令
apropos 會搜索手冊頁名稱和關(guān)鍵字描述(以命令名作為正則表達(dá)式搜索)。
使用 -l 標(biāo)志來顯示完整的描述。
- $ apropos fswatch $ apropos -l fswatch
Linux apropos 命令示例
默認(rèn)上,apropos 會如示例那樣輸出所有匹配的行。你可以使用 -e 選項來精確匹配:
- $ apropos fmt$ apropos -e fmt
Linux apropos 命令根據(jù)關(guān)鍵詞顯示
3、 type 命令
type 命令會輸出給定命令的完整路徑名,此外,如果輸入的命令名不是做為獨立存儲在磁盤的文件的程序,type 還會告訴你命令分類:
- shell 內(nèi)置命令
- shell 關(guān)鍵字或保留字
- 別名
- $ type fswatch
Linux type 命令示例
當(dāng)命令是另外一個命令的別名時,type 會顯示運(yùn)行別名時所執(zhí)行的命令。使用 alias 命令可以查看你系統(tǒng)上創(chuàng)建的所有別名:
- $ alias$ type l$ type ll
4、 which 命令
which 可以幫助命令定位命令,它會打印出命令的絕對路徑:
- $ which fswatch
找出 Linux 命令位置
一些二進(jìn)制文件存在于 PATH 環(huán)境變量中的多個目錄,使用 -a 標(biāo)志來找出所有匹配的路徑名。
5、 whereis 命令
whereis 定位指定命令名的二進(jìn)制、源和幫助頁文件,如下所示:
- $ whereis fswatch$ whereis mkdir $ whereis rm
Linux whereis 命令示例
雖然上面的命令對于查找關(guān)于命令/程序的一些快速信息很重要,但是該命令的手冊總是可以提供完整的文檔,它還包括其他相關(guān)程序的列表:
- $ man fswatch
在本文中,我們回顧了五個簡單的命令,用于顯示命令的簡短的手冊描述和位置。 你可以在反饋欄中對此文章做出貢獻(xiàn)或提出問題。
作者簡介:
Aaron Kili 是 Linux 和 F.O.S.S 愛好者,將來的 Linux SysAdmin、web 開發(fā)人員,目前是 TecMint 的內(nèi)容創(chuàng)作者,他喜歡用電腦工作,并堅信分享知識。