Linux 快速查詢檔案
阿新 • • 發佈:2021-07-14
使用linux作業系統的人,一般都用過檔案查詢命令find,在檔案數量非常龐大的時候,比如在高通的android工程專案中,目錄大小有十幾個G,檔案數量非常多,用find命令就太慢了。
下面介紹一個比find快得多的命令,搜尋任何檔案幾乎都能在一秒內返回。
mlocate這個命令的原理是,先為檔案系統建立索引資料庫,mlocate只是搜尋索引,所以速度快
準備工作:建立資料庫(建立索引)sudo updatedb 只有root許可權才能執行,他會掃描整個系統,為整個系統建立索引,資料庫在/var/lib/mlocate/mlocate.db
這個過程會比較慢,可以在中午或晚上跑一下,執行完了上面的命令就可以使用mlocate搜尋檔案了
mlocate abc.txt
mlocate -ie abc.txt 如果abc.txt已經刪除了,使用-e會檢查檔案是否真實存在,而不必updatedb;-i,忽略大小寫
mlocate /etc/*profile 在/etc中查詢類似profile的檔案
注意:對於新增檔案應該先updatedb更新資料庫,否則就搜不到,當然更新索引時,執行updatedb還是比較快的