find [options] path... [expression]

在指定目錄中,遍歷搜索符合 expression 限定條件的文件、目錄

options

-P 不解析符號鏈接(默認選項,-H/-L/-P 三選一)
-H 僅解析命令中指定名字的符號鏈接(-H/-L/-P 三選一)
-L 解析所有符號鏈接,follow link(-H/-L/-P 三選一)
-E 使用擴展正則表達式進行解析

-d 深度優先后序遍歷輸出,默認為深度優先(目錄優先)前序遍歷輸出
-f path 明確指定一個目標目錄結構(也可以直接在后面的 path 中給出)
-s 按字典順序遍歷文件目錄

expression

用于指定搜索目標文件需要匹配的具體條件,擁有可變數字參數 n 的限定屬性,可在數字前追加前綴 + 表示 >n ,- 表示 <n

指定文件時間

-atime n 尋找最近n天內訪問過的文件,可指定 s/m/h/d/w 作為單位,分別表示 秒、分、時、日、周,如 -atime -1h30m
-mtime n 尋找最近n天內更新過文件數據的文件、目錄,可指定 s/m/h/d/w 單位
-ctime n 尋找最近n天內修改過節點元數據的文件、目錄,可指定 s/m/h/d/w 單位
-Btime n 尋找文件inode節點在最近n天內創建的文件、目錄
-amin/-mmin/-cmin/Bmin n 尋找n分鐘內訪問、修改過、創建inode的文件、目錄,不可指定單位
-newerXY file 尋找時間戳比 file 更新的文件、目錄,X 指定時間戳類型,可用 a/c/m/B 分別表示 atime/ctime/mtime 和 inode節點創建時間,Y 指定 file 文件中用于對比的時間戳類型,可選,默認為 m。默認 -newer = -newermm
-anewer/-mnewer/-cnewer/-Bnewer file 尋找訪問、修改、節點創建時間比 file 的 mtime(數據修改時間)更新的文件、目錄,可等價與對應的-newerXY file

其他屬性

-name pattern 指定文件名(可包含父目錄),可使用通配符[ ] * ?,及轉義符\
-lname pattern 搜索其內容匹配指定文件名的符號鏈接
-iname/-ilname pattern 不區分大小寫的文件名搜索
-path/-ipath/-iwholename pattern 指定目標匹配目錄名,可使用通配符[ ] * ?,及轉義符\
-regex/-iregex pattern 按正則表達式(忽略大小寫)搜索
-prune -o 排除掉前面-name/-path等指定的路徑名,不進入該目錄掃描
-depth n 精確的遍歷深度過濾器,僅列出該深度層次的搜索結果文件、目錄
-maxdepth n 最大搜索深度,n=0時僅搜索命令指定的精確目錄
-mindepth n 最小搜索深度,直接忽略掉該深度以下的文件、路徑搜索過程,n=1時搜索命令指定的目錄中的所有子目錄,但不搜索該目錄本身的文件
-empty 搜索空文件、目錄
-size n 搜索指定大小的文件,未指定單位時為512字節塊個數,可指定 k/M/G/T/P 作為單位后綴
-type t 搜索指定類型的文件,類型可指定為 b 塊文件 c 字符文件 d 目錄 f 常規文件 l 符號鏈接 p FIFO文件 s socket文件
-perm mode 搜索指定權限的文件、目錄,mode 可使用字母代號或數字組表示,前置減號-表示目標文件必須完全滿足指定的最低權限,前置加號+表示目標文件任一權限位滿足給定最低權限即符合匹配,不具備前置符表示精確匹配,目標文件必須擁有與給定權限完全相同的權限模式。
-links n 搜索擁有n個鏈接的文件、目錄
-samefile name 搜索指定文件名的硬鏈接
-group gname/-gid id 搜索指定組名或GID的文件、目錄
-user uname/-uid id 搜索指定用戶名或UID的文件、目錄
-nouser/-nogroup 搜索沒有擁有者、群組的文件、目錄
-fstype type 搜索指定的文件系統
-inum n 搜索inode節點編號為n的文件
-print/-print0 每個結果輸出后追加/不追加換行符

后續操作

-delete 搜索并刪除,此選項無法跟蹤符號鏈接
-ls 輸出目標文件的inode編號、占用空間、權限、擁有者、鏈接數、修改時間等信息,使用ls -dgils輸出樣式
-exec command [argument...] ; 執行指定命令操作,可在命令名或參數中使用通配符{}表示當前遍歷到的文件路徑,默認 command 優先執行當前目錄下的同名可執行工具
-execdir command [argument...] ;-exec 相同,但 command 優先執行遍歷到的目錄下的同名可執行工具
-ok/-okdir command [argument...] ; 等同于-exec/-execdir,但每次執行前需要請求確認

operator

可用于修飾限定 expression 的特殊操作符

! expression / -not expression 反向匹配
expression1 -and expression2 / expression1 expression2 ... 并列同時匹配
expression1 -or expression2 任意匹配其中一個

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Ubuntu的發音 Ubuntu,源于非洲祖魯人和科薩人的語言,發作 oo-boon-too 的音。了解發音是有意...
    螢火蟲de夢閱讀 99,586評論 9 467
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數據革命閱讀 12,239評論 2 33
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,973評論 19 139
  • 時代不同了 有些東西真的不能用上一代的思想來定義 我記得小的時候,去姥姥或者爺爺家一趟,往往是撐到爬著出來。 但不...
    無所丶濤閱讀 297評論 0 0
  • 這幾日學妹來蘇學習身段,與我同住。我倆一向無話不談,是夜便一如去西北前夜與她徹夜長談。學妹于南大讀研,主攻昆曲學,...
    小妖哥兒閱讀 575評論 3 4