linux 命令之find


一、find命令简介

find命令的作用主要是查找文件,可以到指定的目录中查找指定的文件。默认情况下find命令是查找当前目录下的文件,可以通过参数设置查找整个系统的文件。


二、find命令参数说明


按文件名查找

-name 根据文件名查找

根据文件属性:

-user 用户名
-group 组名

根据文件大小查找:

-size [+/-] [单位]
+ 大于
– 小于
单位: b 数据块 c 字节 w 双字节 k=kb M=Mb G =GB

-size +5M 大于5M
-size -5M 小于5M
-size 4M 5M 在4M和5M之间
-empty 大小为0的文件

根据文件类型查找:

-type 文件类型
类型列表:
-f 普通文件
-d 目录
-b 块设备
-c 字符设备
-p 命名管道
-l 链接
-s socket文件


三、find命令使用说明

[root@localhost ~]#find ‘so.c’ //查找当前名录下文件名为 so.c的文件
[root@localhost ~]#find ! -name ‘so.c’ //查找当前目录下文件不等于 so.c的全部文件
[root@localhost ~]#find -name ‘so.c’ -o -name ‘t2.c’ //获取当前目录下文件名 等于 so.c 或 t2.c的文件
[root@localhost ~]#find -name ‘so.c’ -a -name ‘*.c’ //获取当前目录下的文件名 等于 so.c 并且 后缀名.c的文件
[root@localhost ~]#find -size 10M 50M 获取文件大小在 10M和50M之间的文件
[root@localhost ~]#find -size +10M 获取大于10M的文件
[root@localhost ~]#find -size -10M 获取小于10M的文件
[root@localhost ~]#find -empty 获取文件大小为0的文件
[root@localhost ~]#find -type d //获取当前目录下的 目录文件