Windows操作系統要查找一份文件是相當簡單的事情,只要在桌面上點擊“開始—搜索”中就能按照各種方式在本地硬盤上,局域網絡,甚至在INTERNET上查找各種文件,文檔。可是在linux中要查找某一個文件就是一件很麻煩的事情。畢竟在linux中需要我們使用專用的“查找”命令來尋找在硬盤上的文件。Linux下的文件表達式非常復雜,對於linux新手來說,find命令也是了解和學習linux文件特點的方法。下面就詳細為大家介紹強大的find命令的全部使用方法和用途。
Find命令用於進行文件查找,它有實施查找、精確、支持眾多查找標准,但是它是遍歷指定目錄中的所有文件完成查找,所以速度非常慢。格式是:find 查找路徑 查找到以後的處理運作。不寫查找路徑默認為當前目錄,查找標准默認為指定路徑下的所有文件,處理運作默認為顯示下面說一下它的主要命令。
匹配標准
-name:'filename':對文件名精確查找
*:任意長度的任意字符
[ ]:指定此范圍
-iname:文件匹配不區分大小寫
-regex PATTERN:基於正則表達式進行文件名匹配
-user USERNAME:根據屬主查找
-group GROUPNAME:根據屬組查找
-uid UID:根據UID查找
-gid GID:根據GID查找
- nouser : 查找沒有屬主的文件
- nogroup :查找沒有屬組的文件
-type:根據文件類型查找
f:普通文件
d:目錄文件
c:字符設備文件
b:塊設備文件
l:符號鏈接文件
p:命令管道文件
s:套接字文件
字符大小
-size [+(內)|-(在限定之外)、什麼都不加為精確到]
#k:
#M:
#G
組合條件:
-a 與
-o 或
-not
時間(也可以使用+-與字符相同)
-mtime:
-ctime:
-atime:
-mmin:user
-cmin:
-amin:內
根據權限查找
perm MODE 精確匹配
/MODE 任意一位匹配既滿足條件
-MODE 文件權限能完全包含此MODE時才能顯示
動作:
-print:顯示
-ls:類似ls -l的形式顯示每一個文件的詳細
-ok COMMAND {}\;每一部操作都需要用戶確認
-exec COMMAND{}\;不需要確認