Linux基本命令whereis命令詳解
whereis是 Linux 系統(tǒng)中一個非常有用的命令,用于定位二進制程序、源代碼文件和手冊頁的位置。與which命令不同,whereis不僅能找到可執(zhí)行文件,還能找到相關(guān)的文檔和源代碼,它也是系統(tǒng)管理員和開發(fā)人員在查找命令相關(guān)文件時的有用工具,特別是在需要了解命令的完整安裝位置時非常實用。
一、基本語法
whereis [選項] 文件名
二、主要功能
whereis 命令會搜索以下類型的文件:
二進制文件(可執(zhí)行程序)
源代碼文件
手冊頁(man pages)
三、常用選項
| 選項 | 說明 |
|---|---|
-b | 只搜索二進制文件 |
-m | 只搜索手冊頁文件 |
-s | 只搜索源代碼文件 |
-u | 搜索不常見的文件(即沒有文檔、源代碼或二進制文件的命令) |
-B | 指定二進制文件的搜索路徑 |
-M | 指定手冊頁的搜索路徑 |
-S | 指定源代碼的搜索路徑 |
-f | 終止前面的路徑列表(與 -B, -M, -S 一起使用) |
四、使用示例
基本使用 - 查找命令的所有相關(guān)文件:
whereis ls
輸出示例:

只查找二進制文件:
whereis -b gcc
輸出示例:

只查找手冊頁:
whereis -m printf
輸出示例:

只查找源代碼:
whereis -s python
whereis的默認行為:如果找不到匹配的文件,它只會返回命令名稱后跟冒號:,表示“未找到”。whereis -s專門用于查找 源代碼文件(source code),但 Python 的源代碼通常不會默認安裝在標準系統(tǒng)路徑中,因此whereis可能找不到。
查找不常見的命令(即沒有文檔、源代碼或二進制文件的命令):
whereis -u *

指定搜索路徑:
whereis -B /usr/local/bin -f python

whereis:Linux 命令,用于查找二進制文件、手冊頁和源代碼文件。-B /usr/local/bin:指定只搜索二進制文件,并且限定在/usr/local/bin目錄下查找。-f:表示終止-B指定的路徑列表,后面接要查找的命令名(這里是python)。python:要查找的目標命令。
五、whereis 與 which 的區(qū)別(重點)
| 特性 | whereis | which |
|---|---|---|
| 搜索范圍 | 二進制文件、手冊頁、源代碼 | 僅PATH中的可執(zhí)行文件 |
| 顯示結(jié)果 | 所有相關(guān)文件路徑 | 第一個找到的可執(zhí)行文件路徑 |
| 搜索速度 | 較快(使用數(shù)據(jù)庫) | 較慢(實時搜索) |
| 適用場景 | 查找命令的所有相關(guān)文件 | 確定執(zhí)行的是哪個版本 |
六、注意事項
whereis通常比which更快,因為它搜索的是系統(tǒng)預先構(gòu)建的數(shù)據(jù)庫,而不是實時搜索文件系統(tǒng)。在某些系統(tǒng)上,
whereis可能不會找到所有文件,這取決于數(shù)據(jù)庫的更新頻率。如果找不到預期的文件,可以嘗試使用
updatedb命令更新數(shù)據(jù)庫(需要root權(quán)限):
再使用 updatedb 命令更新數(shù)據(jù)庫:

updatedb的作用
updatedb是mlocate包提供的工具,用于更新系統(tǒng)的文件索引數(shù)據(jù)庫(/var/lib/mlocate/mlocate.db)。whereis、locate等命令依賴此數(shù)據(jù)庫快速查找文件,而非實時掃描磁盤。如果新安裝了軟件(如 Python 源碼),但數(shù)據(jù)庫未更新,
whereis可能無法找到它。
到此這篇關(guān)于Linux基本命令whereis命令詳解的文章就介紹到這了,更多相關(guān)linux whereis命令內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決bash:/root/.bashrc:Permission denied的問題
本文主要介紹了解決bash:/root/.bashrc:Permission denied的問題,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-10-10
Linux下使用nextcloud搭建個人網(wǎng)盤代碼實例
這篇文章主要介紹了Linux下使用nextcloud搭建個人網(wǎng)盤代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,,需要的朋友可以參考下2019-06-06
shell產(chǎn)生隨機數(shù)七種方法的實現(xiàn)
這篇文章主要介紹了shell產(chǎn)生隨機數(shù)七種方法的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12
Shell腳本實現(xiàn)的一個簡易Web服務器例子分享
這篇文章主要介紹了Shell腳本實現(xiàn)的一個簡易Web服務器例子分享,本文實現(xiàn)的Web服務器非常簡單實用,可以在你不想安裝nginx、apache等大型WEB服務器時使用,需要的朋友可以參考下2014-12-12

