Linux下find命令在目錄結構中搜索文件,並執行指定的操做。而且提供了至關多的查找條件,功能很強大。shell
1.命令格式: ide
find pathname -options [-print -exec -ok ...]spa
2.命令功能:blog
用於在文件樹種查找文件,並做出相應的處理(可能訪問磁盤) get
3.命令參數:it
pathname: find命令所查找的目錄路徑。例如用.來表示當前目錄,用/來表示系統根目錄。io
-print:find命令將匹配的文件輸出到標準輸出。class
-exec:find命令對匹配的文件執行該參數所給出的shell命令。相應命令的形式爲'command' { } \;,注意{ }和\;之間的空格。配置
4.命令選項:file
-name 按照文件名查找文件。
-perm 按照文件權限來查找文件。
-prune 使用這一選項能夠使find命令不在當前指定的目錄中查找,若是同時使用-depth選項,那麼- prune將被find命令忽略。
-user 按照文件屬主來查找文件。
-group 按照文件所屬的組來查找文件。
-mtime -n +n 按照文件的更改時間來查找文件, - n表示文件更改時間距如今n天之內,+ n表示文件 更改時間距如今n天之前。find命令還有-atime和-ctime 選項,但它們都和-mtime 選 項相同。
-nogroup 查找無有效所屬組的文件,即該文件所屬的組在/etc/groups中不存在。
-nouser 查找無有效屬主的文件,即該文件的屬主在/etc/ passwd中不存在。
-newer file1 ! file2 查找更改時間比文件file1新但比文件file2舊的文件。
-type 查找某一類型的文件,諸如: b - 塊設備文件。 d - 目錄。 c - 字符設備文件。 p - 管道 文件。 l - 符號連接文件。 f - 普通文件。
-size n:[c] 查找文件長度爲n塊的文件,帶有c時表示文件長度以字節計。
-depth:在查找文件時,首先查找當前目錄中的文件,而後再在其子目錄中查找。
-fstype:查找位於某一類型文件系統中的文件,這些文件系統類 型一般能夠在配置文件/etc/fstab中 找到,該配置文件中包含了本系統中有關文件系統的信息。
-mount:在查找文件時不跨越文件系統mount點。
-follow:若是find命令遇到符號連接文件,就跟蹤至連接所指向的文件。
-cpio:對匹配的文件使用cpio命令,將這些文件備份到磁帶設備中。另外,下面三個的區別: - 建時間 來查找文件,-n指n天之內,+n指n天之前。
Linux用find命令也能夠查找文件大小爲XX的文件。
例如:一個文件5556字節,能夠這樣寫find /root -size -5557c -size +5555c -exec ls -ld {} \;即查找大於5555字節小於5557字節的文件,以上查找的是/root目錄。