【Linux】Linux系統下find指令詳細用法與示例

Linux中的Find指令是Linux系統中很重要也是很棒的指令之一,功能很是得強大。下面我根據實例代碼向你們分享find指令。因爲博客上沒法貼出Linux代碼,我就在截圖中體現出代碼,以及效果。正則表達式


我先本身建立了文件名的test.c的普通文件,咱們用指令mkdir,以及ls查看已經建立了test.c.shell

wKioL1c9VzyQalhuAAAktKIMzNs034.png

如今咱們查找它。ide

  1. 根據文件名或者正則表達式查找:-name   經過文件名字查找spa


文件名:
3d

1)find ./ -name test.c   查找文件名爲test.c的文件code


wKioL1c9Wu2gJl51AAALFDsmLSE107.png


2)find 。/ -name 'test.c*'  查找文件名包括test的文件blog


wKiom1c9WkOzC_tWAAAZw3fcmqk534.png


正則表達式:ci

1)find 用 「!」來否認參數 .get

find ./ ! -name '*.c' -print    查找文件名不爲.c的文件,並打印出來。(實際後面的-print可要可不要,效果都會顯示在屏幕上)
博客

wKioL1c9XnrxDwa7AAB4Y2QnZuA829.png


2)若是想匹配多個條件中的一個,可使用-o參數。

-a  與條件

-o  或條件

-not 非條件(此參數的功能相似於否認參數‘!’)

2.根據文件大小查找


經過-size選項能夠經過文件大小查找文件。


-size n:[c] 查找文件長度爲n塊的文件,帶有c時表示文件長度以字節計。

b——塊(512字節); c——字節; w——字(2字節);

k——千字節 ; M——兆字節; G——吉字節。


1)find ~ -size +100k    查找比100k大的文件

wKioL1c9YvjjLTFCAAAVgOP8DQc509.png


2)find ~ -size -100k     查找比100k小的文件

wKiom1c9YhyxTymWAABrg5hdAcI502.png


3)find ~ -size  100k     查找大小爲100k的文件

注意: – 指比給定尺寸小,+ 指比給定尺寸大。沒有符號表明和給定尺寸徹底同樣大。

3.根據文件深度查找

使用mimdepth,maxdepth限定搜索指定目錄的深度。

-depth:在查找文件時,首先先查找當前的目錄中的文件,而後在其子目錄中查找。

1)find ./  -name test   在root目錄以及子目錄下查找文件名爲test的文件

wKioL1c9af7AudgsAAAPLXaqRhg981.png


2)find -maxdepth 2 -name test    在root目錄以及深度爲1的子目錄中查找文件名爲test的文件

wKioL1c9aC3xvGzpAAAPMZc2DNc501.png


3)find -mindepth 1 -maxdepth 5 -name test    在深度爲0的子目錄以及深度爲5的子目錄中查找文件

名爲test的文件

wKiom1c9aGmTrq7-AAARYq_j2ao837.png


4.根據文件權限查找文件

-perm 按照文件的權限來查找文件。

1)find -perm -g=w 找到具備組讀權限的文件

wKiom1c9bubDc_RwAADkNK7Fbqg836.png

5.根據文件類型查找文件。

-type  查找某一類型的文件。諸如:

文件類型   類型參數
 普通文件    f
 符號文件    l
 目錄       d
 字符設備    c
 塊設備     b
 套接字     s
 管道文件    p

1)find . -type d 查找類型爲目錄的文件

wKioL1c9coPxhfFbAABTODTp5Z8208.png


其餘類型的文件就能夠按照上述命令來查找了。

6.根據文件時間來查找


Linux文件系統中每個文件都有三種時間戳:

(1)訪問時間(-atime):用戶最近一次訪問文件的時間;

(2)修改時間(-mtime):文件內容最後一次被修改的時間。

(3)變化時間(-ctime):文件元數據(metadata,例如權限或全部權)最後一次改變的時間。


-atime,-mtime,-ctime做爲時間參數,單位是天。可使用+表示大於,-表示小於(和根據文件的大小查找中的+,-相同)。


咱們在這裏只針對-mtime舉例子了,其餘兩個時間戳也是同樣的。

1)find ./ -mtime -5   查找小於等於5天內修改過的文件

wKiom1c9deeiV2wVAABTnuYfgqA398.png


2)find ./ -mtime +2   查找大於2天前修改過的文件


wKiom1c9dkbhjf-dAAB0Bg_Ul0s983.png


3)find ./ -mtime 1   查找1天前,當天修改過的文件

wKioL1c9d4nhZULdAAAeTgnMfT4610.png


4)find ./ -newer test.c   查找比test.c還要新的文件

wKioL1c9d83COArJAADGvEZqJ_0051.png

相關文章
相關標籤/搜索