2013年9月9日 星期一

每天一個Linux指令- whereis (只能用於程式名的搜索,而且只搜索二進位檔案)

每天一個Linux指令- whereis (只能用於程式名的搜索,而且只搜索二進位檔案)



拷貝來源:


01.http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html


02.http://www.cnblogs.com/peida/archive/2012/11/09/2761928.html


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   定位原始程式碼文件。


-u   搜索預設路徑下除可執行檔、原始程式碼文件、幫助文件以外的其它文件。


-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原始檔案


 


沒有留言:

張貼留言