Linux——學習篇(二)之find命令

Linux中的find命令:shell

   對於Linux而言,有着「一切皆文件」的這一特性,因此相比較windows而言對於文件沒有後綴名,查找是並不輕鬆的的。所以,須要咱們熟悉Linux下的find命令,更快地找到咱們所須要的文件。windows

  1. 命令格式
ide

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

  2. 命令參數3d

pathname: find 命令所查找的目錄路徑。例如用.來表示當前目錄,用、表示系統根目錄。blog

-print:      find命令將匹配的文件輸出到標準輸出。get

-exec:         find命令對匹配的文件執行該參數所給的shell命令。it

-ok:          與-exec的做用相同,在執行每個命令以前,都會給出提示,讓用戶判斷是否執行。io

 3.   命令選項class

(1)-name   按照文件名查找文件。

查找在$HOME目錄下全部符合的log文件。

find ~ -name "*.log" -print  

想要在當前目錄及子目錄中查找全部的‘ *.log‘文件:

find . -name "*.log" -print  

想要的當前目錄及子目錄中查找文件名以一個大寫字母開頭的文件:

find . -name "[A-Z]*" -print  

想要在/etc目錄中查找文件名以host開頭的文件:

find /etc -name "host*" -print  

想要查找$HOME目錄中的文件:

find ~ -name "*" -print 或find . -print  

要想讓系統高負荷運行,就從根目錄開始查找全部的文件: 

find / -name "*" -print  

若是想在當前目錄查找文件名以一個個小寫字母開頭,最後是4到9加上.log結束的文件:  

find . -name "[a-z]*[4-9].log" -print

wKioL1c9sWHTZKm2AADHyB7hHzQ872.png

(2)-perm   按照文件權限來查找文件。

例:查找user爲可讀可寫可執行,group爲可讀可寫不可執行,other爲可讀不可寫不可執行(764):

wKiom1c9s1CAV9nzAACjJdtM0AM378.png

(3)-prune  使用這一選項可使find命令不在當前指定的目錄中查找,若是同時使用-depth選項,那麼-prune將被find命令忽略。

例:TEST目錄下查找文件,但不但願在TEST/test目錄下查找

wKiom1c9t66xa6VqAABH3C89Vno113.png

(4)-user   按照文件屬主來查找文件。

例:在在$HOME目錄中查找文件屬主爲root/sust的文件

wKiom1c9vAexXP9QAABBaLnKO7c711.png

(5)-group      按照文件所屬的組來查找文件。

         -nogroup 查找沒有有效所屬用戶組的全部文件

例:在當前目錄下查找屬於root用戶組的文件和文件系統的根目錄處查找沒有有效所屬用戶組的全部文件

wKiom1c9v4SRYRYyAAA7XPQvPSU358.png

(6)-mtime -n +n  按照文件的更改時間來查找文件, - n表示文件更改時間距如今n天之內,+ n表示文件更改時間距如今n天之前。find命令還有-atime和-ctime 選項,但它們都和-m time選項。

例:但願在系統當前目錄下查找更改時間在3日之內的文件:

find . -mtime -3 -print

爲了在根目錄下查找更改時間在3日之前的文件,能夠用:

find  / -mtime +3 -print

(7)-newer file1 ! file2  查找更改時間比文件file1新但比文件file2舊的文件。

例:查找更改時間比文件test.c新但比文件Public舊的文件:

find -newer test.c ! -newer Public -print

wKiom1c9w1vD1liUAACfLXnQENM710.png

(8)-type  查找某一類型的文件,諸如:b - 塊設備文件。d - 目錄。c - 字符設備文件。p - 管道文件。l - 符號連接文件。f - 普通文件。

 例:在當前目錄下查找普通文件(f),目錄文件(d),符號鏈接文件(l)

wKioL1c9xoPhGm1DAABi--eCjMc905.png

(9)-size n:[c] 查找文件長度爲n塊的文件,帶有c時表示文件長度以字節計。-depth:在查找文件時,首先查找當前目錄中的文件,而後再在其子目錄中查找。

例:在當前目錄下查找文件長度爲10塊字節的文件 

find . -size 10 -print

find命令從當前目錄開始,查找一個名爲CON.FILE的文件。   

find . "CON.FILE" -depth -print

wKioL1c9yK2x26pjAAAiAn-QP_w607.png

(10)-mount:在查找文件時不跨越文件系統mount點

例:從當前目錄開始查找位於本文件系統中文件名以XC結尾的文件  

find . -name "*.XC" -mount -print

wKiom1c9yL_C0hzKAABM-xqA0eI834.png

相關文章
相關標籤/搜索