使用格式:find  [查找目录]  [查找规则]  [查找完后执行的操作]

【查找目录】

即要查找的路径,可以使用 .(当前路径),~等符号,如果是多个路径用空格间隔起来。

【查找完执行的操作】

# -print                                //默认情况下的动作,正常显示出文件
  # -ls                                    //查找到后用ls方式显示出来
  # -ok  [command]               //查找后询问用户是否要执行command(命令)
  # -exec [command]            //查找后直接执行命令,不询问用户
  # -delete                             //删除查找到的文件
  # -fprint [filename]    //显示并将搜索结果写入到文件中
  # -fls [filename]      //同上,ls方式显示并写入文件中

 

  注:在命令中使用{}代替查找出来的文件。 

【查找规则】

1.name选项(按文件名查找)

find [path] -name "文件名"      文件名可以使用正则规则进行通配寻找,比如*(任意字符),?(任意单个字符)等。-iname表示不去分大小写。

2.perm选项(按文件权限查找)

find [path] -perm xxx       xxx表示8进制表示的权限

3.user group选项(按用户,组查找)

find [path] -user [username/groupname]         查找属主为某用户/组的文件

find [path] -nouser/-nogroup                            查找没有有效所属用户/组的所有文件

4.?time选项(按时间查找)

find [path] -?time [+/-天数]                  减号-表示距今n天以内,加号+表示距今n日以前。

其中-atime表示“最近一次访问时间”,-mtime表示“最近一次内容修改时间”,-ctime表示“最近一次属性修改时间”。每个-?time都对应一个-?min,即-amin、-mmin、-cmin,区别是?time的单位指的是“天”,而?min的单位是“分钟”。  

5.type选项(按类型查找)

find [path] -type [filetype]                    文件类型有f,d,l,b,c,p,s等,具体含义查找linux相关资料。

6.size选项(按文件大小查找)

find [path] -size [文件大小]    这里文件大小的单位是字节,前面可以加上+或者-,分别表示大于和小于。数字后面加c的话表示单位是块,一块等于512字节。

7.path,prune选项(限定/忽略目录)

这里介绍的很详细,不再重复编写。

8.newer选项(查找比某文件新/旧的文件)

find [path] -newer [file]         查找比file文件新的文件

find [path] -newer [file1] ! -newer [file2]    查找比file1文件新并且比file2文件旧的文件,这里!表示逻辑与

注:新旧针对的是文件的更改时间。

9.-empty

匹配空文件

10.-o,-a,-not选项

-a,-o用来连接两个条件,分别表示逻辑与和逻辑或;-not表示对后面一个条件逻辑取反。