Linux 基础——文件搜索命令find

Posted 铁马寻桥非

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 基础——文件搜索命令find相关的知识,希望对你有一定的参考价值。

一、find命令的好处

  有时会经常在目录下找文件或目录的具体存放在哪,但是该目录下的文件又很多不好找出。这时并不需要手动查看所有的文件,用find命令来帮助查找就行了。所以文件或目录一定归好类,存放有序,这样找起来会方便许多。如果遇到网络高峰期,尽量少用find命令,网络高峰期查找会慢许多。

二、find命令格式及常用命令

  命令格式:

    find [dest_dir] [options] pattern

  参数说明:

    (1)[dest_dir]:指定的目录,如果不写则在当前目录。

    (2)[options]:比如-name、-size、-type等等,如果不写则查找指定目录下所有的文件或目录。

    (3)pattern:匹配模式,可以使用*或?

  常用命令:

    find [dest_dir] -name pattern:在指定目录下根据名字来查找指定匹配模式的所有文件或目录,严格区分大小写。

    find [dest_dir] -iname pattern:在指定目录下根据名字来查找指定匹配模式并忽略大小写的所有文件或目录。

    find [dest_dir] -size -n:在指定目录下查找文件大小在n之内的所有文件。Linux查找时是根据数据块来找的,在Linux中一个数据块的大小是512B即0.5K,如果要查找10MB(10MB=10×1024B=10240B=20480个数据块)大小的文件,即命令写成find /temp -size -20480。

    find [dest_dir] -size +n:在指定目录下查找文件大小超过n的所有文件。

    find [dest_dir] -type f:在指定目录下查找所有的文件。

    find [dest_dir] -type d:在指定目录下查找所有的目录。

    find [dest_dir] -type l:在指定目录下查找所有的软链接。

    find [dest_dir] -amin -n:在指定目录下查找n分钟之内被修改过访问时间的文件或目录,其中a是access。

    find [dest_dir] -amin +n:在指定目录下查找超过n分钟被修改过访问时间的文件或目录,其中a是access。

    find [dest_dir] -cmin -n:在指定目录下查找n分钟之内被修改过属性的文件或目录,其中c是change。

    find [dest_dir] -cmin +n:在指定目录下查找超过n分钟被修改过属性的文件或目录,其中c是change。

    find [dest_dir] -mmin -n:在指定目录下查找n分钟之内被修改过内容的文件或目录,其中m是modify。

    find [dest_dir] -mmin +n:在指定目录下查找超过n分钟被修改过内容的文件或目录,其中m是modify。

    find [dest_dir] -user pattern:在指定目录下查找所属者下指定匹配模式的文件或目录。

    find [dest_dir] -group pattern:在指定目录下查找所属组下指定匹配模式的文件或目录。

三、效果演示

  (1)查找etc目录下以ab开头的所有文件或目录,Linux命令如下,效果如图3-1所示

1 find /etc -name ab*

  

                     图 3-1

   (2)查找etc目录下以ab或AB开头的所有文件或目录,Linux命令如下,效果如图3-2所示

1 find /etc -iname AB*

  

                    图 3-2

  (3)查找etc目录下文件大小超过1MB的所有文件,Linux命令如下,效果如图3-3所示

1 find /etc -size +2048

  

                   图 3-3

  (4)查找etc目录下2分钟之内被修改的文件或目录,Linux命令如下,效果如图3-4所示

1 find /etc -mmin -2

  

              图 3-4

  (5)查找etc目录下的所有的软链接,Linux命令如下,效果如图3-5所示

1 find /etc -type l

  

                     图 3-5

  (6)查找/home/centos目录下所属者为jsg的所有文件或目录,Linux命令如下,效果如图3-6所示

1 find /home/centos -user jsg

  

                图 3-6

 

   

以上是关于Linux 基础——文件搜索命令find的主要内容,如果未能解决你的问题,请参考以下文章

Linux基础命令文件搜索命令

Linux基础命令学习

Linux 基础与应用教程 004(文件搜索命令简单基础)

Linux基础 10其他命令

Linux基础命令(more 管道 grep find)

如何在 Linux 终端中有效地搜索文件