1. 程式人生 > >Linux中find命令用法全彙總

Linux中find命令用法全彙總

Linux 查詢命令是Linux系統中最重要和最常用的命令之一。查詢用於根據與引數匹配的檔案指定的條件來搜尋和查詢檔案和目錄列表的命令。查詢可以在各種條件下使用,您可以通過許可權,使用者,組,檔案型別,日期,大小等可能的條件查詢檔案。

  • 第一部分:查詢名稱查詢檔案的基本查詢命令
  • 第二部分:根據他們的許可權查詢檔案
  • 第三部分:基於所有者和組的搜尋檔案
  • 第四部分:根據日期和時間查詢檔案和目錄
  • 第五部分:根據大小查詢檔案和目錄

第一部分 - 查詢名稱查詢檔案的基本查詢命令

1.使用當前目錄中的名稱查詢檔案
在當前工作目錄中查詢名稱為ysby.jpg 的所有檔案

[[email protected]
tmp]# find ysby.jpg ysby.jpg [[email protected] tmp]#

2.在主目錄下查詢檔案
查詢/ tmp目錄下的所有檔案,名稱為ysby

[[email protected] tmp]# find /tmp/ -name ysby.jpg 
/tmp/ysby.jpg
[[email protected] tmp]# 

3.使用名稱和忽略案例查詢檔案
找到名稱為ysby的所有檔案,並在/tmp 目錄中同時包含大寫和小寫字母。

[[email protected] tmp]# find /tmp/ -iname ysby.jpg 
/tmp/Ysby.jpg
/tmp/ysby.jpg
[
[email protected]
tmp]#

4.使用名稱查詢目錄
在/目錄中查詢名稱為img的所有目錄。

[[email protected] tmp]# find / -type d -name img
/home/guochunyuan/img
/usr/share/doc/HTML/img
/data1/weather/img
[[email protected] tmp]# 

5.使用名稱查詢jpg檔案
在當前工作目錄中查詢名為 ysby.jpg的所有jpg檔案。

[[email protected] tmp]# find / -type f -name ysby.jpg 
/tmp/ysby.jpg
/home/guochunyuan/img/ysby.jpg
[
[email protected]
tmp]#

6.查詢目錄中的所有PHP檔案
查詢目錄中的所有php檔案。

[[email protected] tmp]# find / -type f -name "**.jpg" 
/tmp/ysbyhf.jpg
/tmp/Ysby.jpg
/tmp/ysby.jpg
[[email protected] tmp]# 

第二部分 - 根據他們的許可權查詢檔案

7.查詢777個許可權的檔案
查詢許可權為777的所有檔案

[[email protected] tmp]# find /tmp/ -type f -perm 0777 -print
/tmp/ysby.jpg
[[email protected] tmp]# 

8.查詢只讀檔案
查詢所有隻讀檔案。

[[email protected] tmp]# find /tmp/ -perm /u=r

9.找到777個許可權和Chmod到644的檔案

查詢所有777個許可權檔案,並使用chmod命令將許可權設定為644

[[email protected] tmp]# find /tmp/ -type f -perm 0777 -print -exec chmod 644 {} \;
/tmp/ysby.jpg
[[email protected] tmp]# 

10.查詢並刪除單個檔案

找到一個名為test.c的檔案並將其刪除

[[email protected] tmp]# find /tmp/ -type f -perm 0777 -print -exec rm -f {} \;

11.查詢所有空檔案

在特定路徑下查詢所有空檔案。

[[email protected] tmp]# find /tmp/ -type f -empty;

12.查詢所有空目錄

將特定路徑下的所有空目錄歸檔。

[[email protected] tmp]# find /tmp/ -type  d -empty;

13.檔案所有隱藏檔案

要查詢所有隱藏的檔案,請使用以下命令。

[[email protected] tmp]# find /tmp/ -type f -name ".*";
/tmp/.get_ip.sh
[[email protected] tmp]# 

第三部分 - 基於所有者和組的搜尋檔案

14.查詢基於使用者的單個檔案
在所有者root的/ tmp目錄下查詢名為ysby.jpg的所有或單個檔案。

[[email protected] tmp]# find /tmp/ -user root -name ysby.jpg;

第四部分 - 根據日期和時間查詢檔案和目錄

15.查詢最近50天訪問的檔案
查詢50天后訪問的所有檔案。

[[email protected] tmp]# find /tmp/ -atime 50 

16.查詢最後50-100天修改的檔案
查詢所有被修改超過50天以及少於100天的檔案。

[[email protected] tmp]# find /tmp/ -mtime +50  -mtime -100
/tmp/apollo-charging-lncmcc-notify-0.0.1-SNAPSHOT.tar.gz
/tmp/apollo-charging-lncmcc-order-0.0.1-SNAPSHOT.tar.gz
/tmp/apollo-charging-lncmcc-query-0.0.1-SNAPSHOT.tar.gz
[[email protected] tmp]# 

17.在過去1小時內查詢更改的檔案
查詢最近1小時內更改的所有檔案

[[email protected] tmp]# find /tmp/ -cmin -60
/tmp/Ysby.jpg
/tmp/collect_hardware_message.log
/tmp/ysby.jpg
/tmp/if_dev.txt
[[email protected] tmp]# 

18.在最近1小時內查詢修改的檔案
查詢最近1小時內修改的所有檔案。

[[email protected] tmp]# find /tmp/ -mmin -60
/tmp/Ysby.jpg
/tmp/collect_hardware_message.log
/tmp/if_dev.txt
[[email protected] tmp]#

第五部分 - 根據大小查詢檔案和目錄

19.找到50MB的檔案

要找到所有50MB的檔案,請使用。

[[email protected] tmp]# find / -size 50M
/opt/soft/clamav/updata/clamav/daily.cvd
[[email protected] tmp]# 

20.查詢大小在50MB到100MB之間

找到大於50MB且小於100MB的所有檔案。

[[email protected] tmp]# find / -size +50M -size -100M
/home/duqiyu/ip.log
/opt/soft/jdk18/jre/lib/amd64/libjfxwebkit.so
/opt/soft/jdk18/jre/lib/rt.jar

21.查詢特定檔案並刪除

查詢超過10KB的所有.jpg檔案,並使用一個命令刪除它們

[[email protected] tmp]# find /tmp/ -type f -name "*.jpg" -size +10M -exec rm -f {} \;

還有很多沒有舉例出來可以自行網上查詢許多 學無止境,加油!!