linux中如何使用find命令查找文件

find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。

下面介绍一些关于使用find命令查找文件的命令格式和示例:

1.格式:

find +目录 +条件 +条件值

如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件,

并且将查找到的子目录和文件全部进行显示,如图,在/root下的子目录和文件全部显示出来(截取部分):
linux中如何使用find命令查找文件


2.find命令查找文件相关细分条件,条件越多,查找越准确

  2.1.根据文件格式进行查找:

       在/home下查找所有以 .txt 结尾的文件: find /home -name “*.txt"  :

linux中如何使用find命令查找文件

       在当前目录及子目录下查找所有以 .txt 和 .pdf 结尾的文件,-o 的意思为或者,本机没有.pdf 格式的文件:

当前目录及子目录下查找所有以.txt和.pdf结尾的文件

来自: http://man.linuxde.net/find
当前目录及子目录下查找所有以.txt和.pdf结尾的文件

来自: http://man.linuxde.net/find

linux中如何使用find命令查找文件

       在/home下查找不是以 .txt 结尾的文件:find /home ! -name ".txt"  !表示否定 (文件太多,截取部分):

linux中如何使用find命令查找文件

  2.2.根据文件类型进行查找:

   -type 为类型参数

            f     表示文件
            d    表示目录
            c    表示字符设备
            b    表示块设备
            s    表示套接字
            l     表示链接

       查找/mnt下的子目录:find /mnt -type d :

linux中如何使用find命令查找文件

       查找/mnt下的文件:find /mnt -type f : 

linux中如何使用find命令查找文件

   2.3.根据文件目录层数查找:

        find --maxdepth+层数  按最大层数查找

               --mindepth+层数  按最小层数查找

         find /home -maxdepth 2 -type f   查找/hoem下目录最大层数为2层的文件:

linux中如何使用find命令查找文件

     2.4.按文件大小进行查找:

          -size为文件大小单元

          -size -n:指小于nk

          -size +n:指大于nk

          -size n :指等于nk

           find /mnt -type f -size -100  在/mnt目录下查找小于100K的文件:

linux中如何使用find命令查找文件

     2.5.根据文件权限进行查找:

          -perm 文件权限指数

          find /mnt -type f -perm 660 在/mnt下查找权限为660的文件:

linux中如何使用find命令查找文件

关于使用find命令查找文件的方法还有很多,目前就先介绍这些,后续会持续更新。