Linux中的Find(查找)命令是在Linux系統(tǒng)中最重要并且更有用的命令之一。Find命令主要用于指定匹配文件條件的參數(shù)查找或者定位文件和目錄的列表。Find命令能夠被使用基于各種各樣的條件,例如permissions(權限),users(用戶),groups(組),file type(文件類型),date(日期),size(大?。┑鹊绕渌赡艿臈l件。
find命令用來精細查找文件或目錄?;菊Z法格式如下:
find [查找范圍] [查找條件表達式]
find常用的查找條件如下:
- -name:按名稱查找;根據(jù)目標文件的名稱進行查找,允許使用“*”及“?”通配符;
- -size:按文件大小查找;一般使用“+”、“-”號設置超過或小于指定的大小作為查找條件。常用的容量單位包括kB(注意k是小寫)、MB、GB;
- -user:按文件屬主查找;
- -type:按文件類型查找;類型指的是普通文件(f)、目錄(d)、塊設備文件(b)、字符設備文件(c)等。
同時使用多個查找條件時,各表達式之間可以使用邏輯運算符“-a”、“-o”,分別表示而且(and)、或者(or)。
應用示例:
1、查看主目錄Linux迷目錄下所有*.txt的文件
[linuxmi@linux:~$] find ~/Linux迷/ -name *.txt
/home/linuxmi/Linux迷/LinuxMi.com.txt
/home/linuxmi/Linux迷/www.LinuxMi.com.txt
/home/linuxmi/Linux迷/LinuxMi.txt
2、查看主目錄Linux迷目錄中所有文件
[linuxmi@linux:~$] find ~/Linux迷/ -type f
/home/linuxmi/Linux迷/LinuxMi.com.txt
/home/linuxmi/Linux迷/LinuxMi1.py
/home/linuxmi/Linux迷/Linux迷微信公眾號
/home/linuxmi/Linux迷/linuxmi.com.jpg
/home/linuxmi/Linux迷/www.LinuxMi.com.txt
/home/linuxmi/Linux迷/LinuxMi3.py
/home/linuxmi/Linux迷/Linux.zip
/home/linuxmi/Linux迷/LinuxMi.txt
/home/linuxmi/Linux迷/LinuxMi2.py
3、查看主目錄Linux迷目錄中所有目錄
[linuxmi@linux:~$] find ~/Linux迷/ -type d
/home/linuxmi/Linux迷/
/home/linuxmi/Linux迷/LinuxMi
/home/linuxmi/Linux迷/Linux迷
4、查看主目錄Linux迷目錄中大于10k的文件
[linuxmi@linux:~$] find ~/Linux迷 -size +10k
/home/linuxmi/Linux迷/Linux迷微信公眾號
/home/linuxmi/Linux迷/linuxmi.com.jpg
/home/linuxmi/Linux迷/Linux.zip
5、查看主目錄Linux迷目錄中小于10k的文件
[linuxmi@linux:~$] find ~/Linux迷 -size -10k
/home/linuxmi/Linux迷
/home/linuxmi/Linux迷/LinuxMi.com.txt
/home/linuxmi/Linux迷/LinuxMi1.py
/home/linuxmi/Linux迷/www.LinuxMi.com.txt
/home/linuxmi/Linux迷/LinuxMi3.py
/home/linuxmi/Linux迷/LinuxMi
/home/linuxmi/Linux迷/LinuxMi.txt
/home/linuxmi/Linux迷/LinuxMi2.py
/home/linuxmi/Linux迷/Linux迷
6、查看主目錄Linux迷目錄中大于100M和名字為*.iso的顯示出來
[linuxmi@linux:~$] find ~/Linux迷/ -size +100M -a -name *.iso
/home/linuxmi/Linux迷/CentOS.iso
7、查看主目錄Linux迷目錄中大于100M或者名字為*.iso的顯示出來
[linuxmi@linux:~$] find ~/Linux迷/ -size +100M -o -name *.iso
/home/linuxmi/Linux迷/CentOS.iso
/home/linuxmi/Linux迷/Debian.iso
8、查找/tmp目錄下的所有空目錄。
[linuxmi@linux:~$] sudo find /tmp -type d -empty