find [option] …[查找路径] [查找条件] [处理动作]
- 起始路径:指定具体的目标路径,默认为当前目录
- 查找条件:指定查找标准,可以根据文件名,权限,文件大小等标准进行。默认为指定路径下的所有文件
- 处理动作:对符合条件的文件做什么操作
1 查找条件:
(1)根据文件名查找:
- -name “文件名称” 支持使用glob
- -iname“文件名称” ,不区分文件名大小写
- -regex PATTERN 基于正则表达式匹配整个文件路径名
(2)根据属主、属组关系查找:
- -user USERNAME 查找属主为指定用户的文件
- -group GROUPNAME 查找属组为指定组的文件
- -uid userUID 查找属主为指定UID的文件
- -gid userGID 查找属组为指定GID的文件
- -nouser 查找所有没有属主的文件
- -nogroup 查找所有没有属组的文件
(3)根据文件类型查找:-type TYPE
- f:普通文件
- d:目录文件
- l:符号链接文件
- s:套接字文件
- b:块设备文件
- p:管道文件
(4)根据文件大小查找:
-size[+|-]#UNIT (单位)
常用单位:K M G
#UNIT (#-1,#] -#UNIT [0,#-1] +#UNIT (#,∞)
(5)根据时间戳查找:
-atime/-mime/-ctime[+|-]# 以天为单位查找访问时间,修改时间或改变时间
# 精确匹配#天 [#,#-1] -# #天至当前时间的访问区间[0-#] +# #天之前的所有文件 -amin/-mmin/-cmin[+|-]# 以分钟为单位查找
(6)根据文件权限查找:
-prem /|- mode 根据文件读写执行权限匹配文件
mode 精确匹配权限 /mode 只要属主属组以及其他用户任意一位权限匹配均视为匹配到的文件 -mod 每一类对象必须同时拥有其指定的权限标准
2 处理动作:
- -print: 输出至标准输出,默认的动作
- -ls:类似于对查找到的文件执行“ls -“ 命令
- -delete:删除查找到的文件
- -fls /PATH/TO/SOMEFILE:把查找到的所有文件的长格式信息保存至指定文件
- -ok COMMAND {} \:对查找到的每个文件执行由此处COMMAND表示的命令,需用户确认
- -exec COMMAND {} \; :对查找到的每个文件执行由此处COMMAND表示的命令,不需用户确认
原创文章,作者:nene,如若转载,请注明出处:http://www.178linux.com/88035