《Shell之locate與find效能命令比較》

來源:互聯網
上載者:User
1、命令介紹 ①locate

Linux locate命令用於尋找合格文檔,他會去儲存文檔和目錄名稱的資料庫內,尋找合乎範本樣式條件的文檔或目錄。

一般情況我們只需要輸入 locate your_file_name 即可尋找指定檔案。


②find

find命令是linux系統尋找檔案的命令,最大的作用是協助使用者在使用linux 系統時候能快速的找出自己所需要的檔案

  2、實戰演練

之前在過《Shell指令碼學習指南》那本書的時候,初次接觸到locate這個命令,然後發現它定位檔案路徑的速度非常快,於是就萌生了它和find這個同樣具有尋找檔案路徑功能的命令之間效能比較的想法。話不多說,直接放圖:以尋找passwd檔案為例


①find效能

 

  ②locate效能

  ③效能比較 locate與find 不同: find 是去硬碟找,locate 只在/var/lib/slocate資料庫中找。
locate的速度比find快,它並不是真的尋找,而是查資料庫,一般檔案資料庫在/var/lib/slocate/slocate.db中,所以locate的尋找並不是即時的,而是以資料庫的更新為準,一般是系統自己維護,也可以手工升級資料庫 ,命令為:locate -u
 
④安全性

locate尋找時,連一些系統關鍵性位置的檔案都可以找出,然而find會受到許可權方面的限制,所以同樣的過濾條件,locate尋找出的檔案數量要明顯多於find尋找出的數量,所以在安全性上locate較find要略遜一籌。 locate尋找出的檔案數量


find尋找出的檔案數量

  ⑤適用情境

如果對安全性要求不高,且對速度上要求高,僅僅需要定位檔案的位置而不是多少天修改、訪問等其他檔案操作的時候,那麼用locate吧。

  3、參考文獻

Linux locate命令

linux之find命令詳解

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.