每天乙個linux命令(16) whereis

2021-08-14 21:32:33 字數 1716 閱讀 9951

whereis命令只能用於程式名的搜尋,而且只搜尋二進位制檔案(引數-b)、man說明檔案(引數-m)和源**檔案(引數-s)。如果省略引數,則返回所有資訊。

和find相比,whereis查詢的速度非常快,這是因為linux系統會將 系統內的所有檔案都記錄在乙個資料庫檔案中,當使用whereis和下面即將介紹的locate時,會從資料庫中查詢資料,而不是像find命令那樣,通 過遍歷硬碟來查詢,效率自然會很高。 

但是該資料庫檔案並不是實時更新,預設情況下時一星期更新一次,因此,我們在用whereis和locate 查詢檔案時,有時會找到已經被刪除的資料,或者剛剛建立檔案,卻無法查詢到,原因就是因為資料庫檔案沒有被更新。 

1.命令格式:

whereis [-bmsu] [bms 目錄名 -f ] 檔名

2.命令功能:

whereis命令是定位可執行檔案、源**檔案、幫助檔案在檔案系統中的位置。這些檔案的屬性應屬於原始**,二進位制檔案,或是幫助檔案。whereis 程式還具有搜尋源**、指定備用搜尋路徑和搜尋不尋常項的能力。

3.命令引數:

-b   定位可執行檔案。

-m   定位幫助檔案。

-s   定位源**檔案。

-b   指定搜尋可執行檔案的路徑。

-m   指定搜尋幫助檔案的路徑。

-s   指定搜尋源**檔案的路徑。

4.使用例項:

例項1:將和**檔案相關的檔案都查詢出來

命令:

whereis svn

輸出:

[root@localhost ~]# whereis tomcat

tomcat:

[root@localhost ~]# whereis svn

svn: /usr/bin/svn /usr/local/svn /usr/share/man/man1/svn.1.gz

說明:

tomcat沒安裝,找不出來,svn安裝找出了很多相關檔案

例項2:只將二進位制檔案 查詢出來

命令:

whereis -b svn

輸出:

[root@localhost ~]# whereis -b svn

svn: /usr/bin/svn /usr/local/svn

[root@localhost ~]# whereis -m svn

svn: /usr/share/man/man1/svn.1.gz

[root@localhost ~]# whereis -s svn

svn:

[root@localhost ~]#

說明:

whereis -m svn

查出說明文件路徑,

whereis -s svn

找source原始檔。

每天乙個Linux命令 16 which

在linux中,當我們不知道目標檔案放在 時,可以使用下面的命令來搜尋 which的作用是,在path變數指定的路徑中,搜尋某個系統命令的位置,並且返回第乙個搜尋結果。也就是說,使用which命令,可以看到某個系統命令是否存在,以及執行命令的具體位置。which 可執行檔案的名稱在path變數指定的...

每天乙個linux命令(16) which命令

我們經常在linux要查詢某個檔案,但不知道放在 了,可以使用下面的一些命令來搜尋 which 檢視可執行檔案的位置 whereis 檢視檔案的位置 locate 配合資料庫檢視檔案位置 find 實際搜尋硬碟查詢檔案名稱。which命令的作用是,在path變數指定的路徑中,搜尋某個系統命令的位置,...

每天乙個linux命令(16) which命令

我們經常在linux要查詢某個檔案,但不知道放在 了,可以使用下面的一些命令來搜尋 which 檢視可執行檔案的位置 whereis 檢視檔案的位置 locate 配合資料庫檢視檔案位置 find 實際搜尋硬碟查詢檔案名稱。which命令的作用是,在path變數指定的路徑中,搜尋某個系統命令的位置,...