1. 程式人生 > >Linux文件查找詳解

Linux文件查找詳解

zl

文件查找:

locate

非實時,模糊匹配,查找是根據全系統文件數據庫進行的

# updatedb (手動生成文件數據庫)

速度快

find

實時

精確

支持眾多查找標準

遍歷指定目錄中的所有文件完成查找,速度慢


# find 查找路徑 查找標準 查找到以後的處理動作

查找路徑:默認為當前目錄

查找標準:默認為指定路徑下的所有文件

處理動作:默認為顯示

匹配標準

-name ‘FILENAME‘:對文件名作精確匹配

文件名通配:*

?[]

-iname ‘FILENAME‘:文件名匹配時不區分大小寫

-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:根據文件大小查找,默認單位為字節

[+/-]10k:表示大於/小於10k,沒有[+/-]代表精確為10k

組合條件:(默認為-a與條件)

-a(與)、-o(或)、-not(非)

時間戳:

-atime +/-n:訪問時間(-n表示n以內,+n表示n天以前)access

-ctime +/-n:修改權限時間change

-mtime +/-n:修改內容時間modify

-mmin、-amin、-cmin 表示分鐘

權限:

-perm MODE:匹配權限

MODE:完全匹配

/MODE:任意一位匹配即滿足條件

-MODE:文件權限能完全包含此MODE才符合條件

處理操作:

-print:顯示

-ls:類似ls -l的形式顯示每一個文件的詳細信息

-ok COMMAND {} \; 每一次操作都需要用戶確認

-exec COMMAND {} \; 直接執行操作不需要確認({}引用文件名時使用)

等同於 | xargs COMMAND,且不需要{}占位符









Linux文件查找詳解