您的位置:首页 > 运维架构 > Linux

Linux命令--文件搜索命令find

2017-02-13 21:55 232 查看
find

所在路径:/bin/find

执行权限:所有用户

语法:find   [搜索范围] [匹配条件]

功能描述:文件搜索

在目录/etc中查找文件名为init的文件
find /etc -name init

(精确寻找)

使用通配符*,就可以查找只要文件名里面包含init的文件

find  /etc  -name inti*

寻找文件名以init开头的文件

find /etc -name *init

寻找文件名已init结束的文件

find /etc -name *init*

寻找文件名中包含init

?:表示匹配单个字符

find /etc -name ?init

表示寻找文件第一个字符为任意字符以init结尾的文件

在windows不区分大小写,linux严格区别大小写,如果想不区分大小写,可以用以下命令:

-iname

find /etc -iname *init*

寻找大小写都为init的文件

-size:大小查找

find /etc  -size  +204800

(在根目录下面查找大于100M的文件)

(size后面可以跟着 +、-和默认,+表示大于,-表示小于,默认表示等于。单位为数据块,一个数据块512个字节,0.5k,100M=102400KB=204800)

在根目下查找所有者为hpy的文件

find  /home -user hpy

-group 根据所属组查找

在/etc 下查找5分钟内被修改过属性的文件和目录

find  /etc -cmin -5

-amin 访问时间access

-cmin 文件属性 change

-mmin 文件内容 modify

-5:-表示在多少时间内,+5表示超过多少时间

find中的连接命令:

在/etc下查找大于80MB小于100MB的文件

find  /etc -size +163840  -a -size -204800

-a 两个条件同时满足

-o两个条件满足任意一个即可

对搜索的结果进行执行操作,在 /etc 下查找init文件并显示其详细信息

find /etc -name init-exec ls -l {} \;

-exec/-ok+需要执行的命令+{} \;

(exec和ok的区别就是ok需要确认)

({}\;是固定的{}表示文件可能有很多个 ,\表示转义符,;表示结束)



根据文件类型查找

-type 

f 文件

d 目录

l 软链接文件

find /etc -name init* -a -type f -exec ls -l {} \;



根据i节点查找
-inum

创建一个文件名为 hpy hahaha的文件

如果不加“”无法删除

用 ls -i  查找当前目录文件的的i节点

用find  -inum 查找节点4610的文件并删除

find . -inum  4610  -exec rm {} \;



(服务器高峰期尽量少用搜索,搜索占的大量的系统资源,搜索范围越小越好)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息