linux檔案查詢find

2022-07-02 21:57:08 字數 1368 閱讀 8268

locate基於資料庫索引來查詢檔案,資料庫在開機時一段時間對更新,不會實時更新,資料庫存放在(/var/lib/mlocate/mlocate.db),可以用updatedb來手動更新資料庫。

優缺點:

查詢速度快

模糊查詢

非實時查詢

搜尋的是檔案的全路徑

只搜尋使用者具備讀許可權和執行許可權的目錄

locate keyword

選項:-i:不區分關鍵字大小寫

-n #:列印匹配到的前#行

-r:使用正規表示式 

find查詢會實時遍歷磁碟,對伺服器效能會有很大影響,使用時應該注意伺服器的負載

優缺點:

查詢速度慢,影響效能

精確查詢

實時查詢

只搜尋使用者具備讀許可權和執行許可權的目錄

find  【查詢路徑範圍】【選項】【查詢條件】【處理操作】

查詢路徑,預設為當前工作路徑

可以指定查詢檔案的檔名、大小、型別、許可權等等指定條件

--maxdepth #:最大搜尋目錄深度

--mindepth #:最小搜尋目錄深度

-name:指定檔名

-iname:忽略檔名大小寫

-inum #:指定inode號

-regex "pattern":使用正規表示式匹配

-user username:查詢指定所屬者的檔案

-group groupname:查詢指定所屬組的檔案

-uid uid:查詢指定uid的檔案

-gid gid:查詢指定gid的檔案

-nouser:查詢沒有所屬者的檔案

-nogroup:查詢沒有所屬組的檔案

-type:根據檔案型別查詢

-empty:查詢空檔案

-size:按檔案大小查詢(c,k,m,g)

-atime:按檔案各時間查詢(天)

-mtime

-ctime

-amin:按檔案各時間查詢(分鐘)

-mmin

-cmin

-perm 許可權匹配

組合新增查詢

對匹配到的檔案做相應的操作,預設操作為輸出到終端

-print:預設處理,列印到終端

-ls:以長格式列出檔案

-delete:刪除檔案,不提示!

-fls newfile:將長格式的檔案列表儲存到newfile == -ls >newfile

-ok cmd {} \;:指定處理動作,提示

-exec cmd {} \;:指定處理動作,不提示!

記錄於2018.4.12 11:57

Linux檔案查詢find

列出資料夾下所有內容 包括目錄 檔案和子目錄中內容,深度優先遍歷 find 資料夾名以上方法列印出來檔案是以換行符分隔,可以連著列印而不分隔,當檔名中有換行符時用 find 資料夾名 print0根據名字查詢檔案 find 目錄名 name 檔名 以上命令中目錄名為要搜尋的目錄,檔名可以用萬用字元搜...

Linux基礎 檔案查詢find

在linux的日常管理中,find的使用頻率很高,熟練掌握對提高工作效率很有幫助。find的語法比較簡單,常用引數的就那麼幾個,比如 name type ctime等。初學的同學直接看第二部分的例子,如需進一步了解引數說明,可以參考find的幫助文件。find語法如下 find 選項 引數 列出當前...

linux檔案查詢find命令

1.locate 與 find命令的區別 locate命令用於查詢檔案,它比find命令的搜尋速度快,它需要乙個資料庫,這個資料庫由每天的例行工作 crontab 程式來建立。當我們建立好這個資料庫後,就可以方便地來搜尋所需檔案了。即先執行 updatedb 無論在那個目錄中均可,可以放在cront...