1. 程式人生 > >Find命令詳解

Find命令詳解

結果 man -name 條件 必須 color pri ctime 字符設備

find命令詳解

格式

find pathname -options [ -print -exec -ok ... ]

功能

在磁盤中查找文件,並作相應處理

參數

pathname 所查找的目錄,可以是相對/絕對路徑

options

  -print  將結果輸出到標準輸出

  -exec ‘command‘ {} \;  對結果執行該參數所給的shell命令

  -ok  與-exec作用相同,不過需要用戶確認是否執行命令

  -name  按照文件名查找

  -perm [+-]mode  按照文件權限查找

  -mode  必須全部包括mode權限

  +mode  包含任一mode

  -user  按照所屬用戶查找

  -group  按照所屬用戶組查找

  -mtime/atime/ctime -n/+n  按照mtime/atime/ctime查找,-n表示n天內變更,+n表示n天前變更

  -nogroup  查找無有效所屬組的文件,即該組不在/etc/group中存在

  -nouser  查找無有效所屬用戶的文件,即該用戶不在/etc/passwd中存在

  -newer file1 ! file2  查找比file新,比file2舊的文件

  -type  查找某一類型的文件

    b  塊設備文件

    d  目錄

    c  字符設備文件

    p  管道文件

    l  連接文件

    f  普通文件

  -size [+-]n[cwbkMG]  不帶單位 查找文件長度為n塊的文件;帶單位 超找文件長度為n Bits的文件

  -depth  首先查找當前目錄,再查找其子目錄

  -fstype  查找某一文件系統的文件

  -mount  查找文件時不跨越mount點

  -follow  如果遇到鏈接文件,就跟蹤至鏈接所指向的文件

  -cpio  對結果文件執行cpio命令

  -amin n  查找最後n分鐘訪問的文件

  -atime n  查找最後n天訪問的文件

  -cmin n  查找最後n分鐘被改變狀態的文件

  -ctime n  查找最後n天被改變狀態的文件

  -mmin n  查找最後n分鐘修改內容的文件

  -mtime n  查找最後n天修改內容的文件

  -o  條件1或條件2

  -a  條件1和條件2

  -not或!  非條件  

舉例

  find . -mtime 2  查找當前目錄最後48小時內修改的文件

  find . -type f -name "*.log"  查找當前目錄下所有以.log結尾的普通文件

  find /opt/soft/test -perm 777  查找/opt/soft/test目錄下所有權限為777的文件

  find . -type d | sort  查找當前目錄下所有目錄並排序

  find . -size +1000c  查找當前目錄下大於1KB的文件

  find . -type f -mtime -2 -exec ls -l {} \;  查找當前目錄下2天內修改的普通文件,並顯示出來

  find . -type f -mtime +14 -exec rm -f {} \;  超找當前目錄下14天之前的文件,並刪除

  find . -type f -mtime +14 -ok rm -f {} \;  超找當前目錄下14天之前的文件,並刪除,刪除前詢問是否刪除

Find命令詳解