find命令解析(不一樣的查找)
Linux中,全部內容都是以文件的形式存在的,這就意味著所有文件的數量也是驚人的,我們如何在天文數字般的文件中找到我們需要的文件呢?這就要用到文件查找命令,本次我們就探討一下其中的find命令。
Find的特性 www.2cto.com
在文件查找命令中不僅有find命令,還有locate命令,它們既然都是文件查找命令,那麼有什麼不一樣呢?
locate:
非實時,模糊匹配,查找是根據全系統文件數據庫進行的;手動生成文件數據庫
速度快。
find:實時,精確,速度慢,遍歷指定目錄中的所有文件完成查找。
Find的使用
find命令的使用格式如下:
find 查找路徑 查找標准 查找到以後的處理動作
www.2cto.com
查找路徑:默認為當前目錄
查找標准:默認所有文件
處理運轉:默認顯示出來
下面我們分開來說明。
匹配標准:
-name 文件名:對文件名做精確匹配
例:查找etc目錄下的passwd find /etc –name “passwd”
-iname:不區分大小寫
-regex 模式:使用正則表達式進行查找
-user : 根據屬主查找
例:查找透tmp目錄下屬於student的文件 find /tmp –user student
-group:根據屬組查找
-uid:根據UID查找
-gid:根據GID查找
-nouser:查找沒有屬主的文件
例:查找tmp目錄下沒有屬主的文件 find /tmp -nouser
-nogrep:查找沒有屬組的文件
-type:根據文件類型查找:
例:查找tmp目錄下目錄 find /tmp –type d
-size :根據文件大小查找 數字+單位 默認單位是字節
例:查找etc目錄下大小為一兆的文件 find /etc –size 1M
-mtime (-|+)天數:查找修改天數(內|外)的文件
例:查找當前目錄下兩天內訪問的文件 find ./ -atime -2
-ctime:查找改變天數的文件
-atime:查找訪問天數的文件
-perm (/|-)權限:
/:只匹配一位權限即可
-:文件權限全包含時才顯示
例:查找當前目錄下權限為644的文件 find ./ -perm -644
合條件組:
-a:與關系
-o:或關系
-not:非關系
使用方法和平常一樣,無非是把不同條件邏輯組合在一起使用,這裡就不再多講了。
動作:
-print:顯示
-ls:列表顯示
-exec 命令 {} \;:引用命令完成查找
例:查找當前目錄下權限為644的文件並將其權限改為536 find ./ -perm -644 –exec chomd 536
上邊就是find命令的簡單展示和應用,如果想深入的了解其更多用法,就使用man命令吧!希望以上內容對大家有用,謝謝。