一、locate: locate [選項] 關鍵詞 在檔案資料庫中查詢匹配搜尋條件的檔案。選項:-i:搜尋時是否區分大小寫,預設區分;加上這個選項就不區分大小寫;-n X:只顯示前X個匹配項目; 備忘:*檔案資料庫是有管理員使用updatedb來產生或者更新的,否則建立立的檔案會查不到;一般情況下資料庫在後台自動建立更新。*搜尋的是全路徑,不單單是檔案名稱。 二、find:find [目錄……] [條件……] 比locate命令慢,但更加準確;*如果沒有指定目錄,則在目前的目錄查詢;*如果沒有指定條件則匹配所有條件;可以在找到的檔案上執行命令:使用選項-ok或者-exec1、基本條件:1)-name 檔案名稱:尋找匹配檔案名稱;
2)-user 使用者名稱:根據使用者名稱尋找; -uid 使用者ID:根據UID尋找; 3)-group 組名:根據組名尋找;2、條件邏輯運算:搜尋條件預設使用AND迅速串連符; find / -name ook -user redhat 就是滿足檔案名稱為ook,並且屬於redhat這個使用者的檔案1)-o來進行OR或運算; 2)-not:邏輯非運算:
3、許可權相關搜尋:-perm [+/-]數字許可權1)+ 數字許可權:表示至少符合了一位; 2)- 數字許可權:表示所有位元都符合: 4、按照檔案大小來搜尋:-size [+/-] 檔案大小find –size 1024K 檔案大小正好1Mfind –size +1024K 檔案大小大於1Mfind –size -1024K 檔案大小小於1M5、按照存取時間搜尋:-atime 最後一次被讀取的時間;-mtime檔案資料上一次被修改的時間;-ctime檔案狀態變化時間;-atime –mtime –ctime 單位是天,如果需要按分鐘來可以寫成-amin –mmin –cminfind –mmin -10 搜尋檔案修改日期少於10天的;6、find後的檔案處理:1)-ok:執行命令時進行確認;2)-exec :直接執行命令無需確認;備忘:{}表示找到的檔案名稱;空格和\;表示終止。 當然,find命令使用組合很多很多,希望通過這個文章能讓大家對find使用更加熟悉、掌握更多的組合。