find命令

Posted

tags:

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

find——文件搜索

命令所在路径:/bin/find

注意:find命令消耗系统资源较多,应避免在系统负载较高的情况下使用

 

示例1:根据文件名查找

# find /tmp/ -name daqiao* 

/tmp/表示在该目录范围下查找,-name后接文件名,执行上面的命令会在/tmp/目录下查找文件名以daqiao开头的所有文件

*  通配符,表示任意多字符

?  单个字符,如a

# find /tmp/ -name *daqiao?????? 

在/tmp/目录下查找文件名末尾是daqiao加6个未知字符组成的所有文件

# find /tmp -iname index* 

-iname的含义是按文件名查找且不区分大小写

示例2:根据i节点查找

# find . -inum 786524 

“.”表示当前路径,执行上面命令会在当前目录下查找索引节点数为786524的文件

示例3:根据文件大小查找

# find / -size +204800 

linux系统中最小的存储单元是数据块,1个数据块 = 512B(字节) = 0.5KB,因此1M = 1024KB * 2 =2048(数据块)

“+”表示大于,执行上面命令将在根目录下查找所有大于100M的文件

# find / -size +102400 -a -size -204800 

-a表示与的关系,a是单词and缩写;“-”表示小于;根目录下查找所有大于50M但是小于100M的文件

 

示例4:根据用户查找

# find . -user daqiao 

在当前路径下查找文件所有者是daqiao的文件

示例5:根据所属组查找

# find . -group nvsheng 

在当前路径下查找所属组是nvsheng的文件

示例6:根据时间属性查找

# find . -amin -5 

在当前目录下查找5分钟内访问过的文件

# find . -cmin -5 

在当前目录下查找5分钟内修改过属性的文件(通过ls -l 显示的信息都是文件属性)

# find /tmp/public_html/ -mmin -5 

在/tmp/public_html/下查找5分钟内修改过内容的文件

-amin  访问时间access

-cmin  文件属性change

-mmin  文件内容modify

 示例7:根据文件类型查找

-type 根据文件类型查找

f——文件  d——目录  l——软连接文件

# find /tmp -type d 

/tmp下查找所有的目录

一般会配合其他参数一起使用,如下:

# find /etc -name init* -a -type f 

/etc下查找文件名以init开头的且文件类型是文件的所有文件

示例8:对搜索结果执行操作

# find /tmp -iname index* -exec ls -l {} \\; 

-exec/-ok 命令 {} \\;  对搜索结果进行操作

执行上面命令会在/tmp下查找以index(不区分大小写)开头的文件,并将结果以长格式列出来

# find /tmp -iname index* -ok rm -f {} \\; 

-ok与-exec唯一的区别是在对搜索结果进行操作时每次都会询问,在确定之后才执行

 

除了上面已经使用到的-a参数,还有另一个参数-o表示或关系,-a,-o分别表示与和或的关系,用以连接条件

-a  and  

-o  or

 

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

find命令怎么使用

文件搜索命令

Linux命令-find命令

find命令

Linux学习第八篇之文件搜索命令find

find命令