工作特性:查找速度略慢;精确查找;实时查找
fnind:
find: find [OPTIONS] [查找起始路径] [查找条件] [处理动作]
查找条件;
根据文件名查找:
-name “pattern” -iname “pattern“ :忽略大小写
pattern支持glob风格的通配符;
-regex “pattern”:基于正则表达式查找文件,匹配的是路径,并非文件名;
根据文件从属关系查找:
-user USERNAME:查找属主为指定用户的所有文件; -group GROUPNAME:查找属组为指定组的所有文件; -uid UID:查找属主为指定UID的所有文件; -gid GID:查找属组为指定GID的所有文件; -nouser:查找没有属主的文件; -nogroup:查找没有属组的文件;
根据文件类型找找:
-type TYPE: f:普通文件; d:目录文件; l:符号链接文件; b:块设备文件; c:字符设备文件; p:管道文件; s:套接字文件;
根据文件的大小查找:
-size [+|-]# 常用单位:K,M,G
根据时间戳查找:
以天为单位: -atime [+|-]# -mtime -ctime 以分钟为单位: -amin -mmin -cmin
根据权限查找
-perm [/|-]mode mode:精确权限匹配 /mode:任何一类用户(u,g,o)权限中的任何一位(r,w,x)满足其中一个就行;权限位之间存在或关系; -mode:每一类用户(u,g,o)权限中的的每一位(r,w,x)同时符合和条件才满足;权限位之间存在与关系;
组合测试:
与:-a;默认组合逻辑;两个条件都满足为与; 或:-o;满足两个条件其中一只为或; 非:!;-not!取反
处理动作:
-print:输出至标准输出;默认的动作;
-ls:类似于对查找到的文件执行“ls -l”命令;显示文件的详细信息
-delete:删除查找到的文件;
-fls /PSTH/TO/SOMEFILE:吧查找到的文件长格式信息保存至指定的的文件中;
-ok COMAND {} ; :对查找到的每个文件执行由COMAND表示的命令每次操作都由用户确认;
-exec COMAND {} ; :对查找到的每个文件执行由CMOAND代表的命令;
练习:
1、找出/tmp目录下属主为非root的所有文件;
find /tmp/ -! -user root
2、找出/tmp目录下文件名中不包含fstab字符串的文件
find / -name [^fstab]
3、找出/tmp目录下属主为非root,而且文件名不包含fstab字符串的文件;
find /tmp -! -user root -a -name [^fstab]
1、查找/var目录下属主为root,且属组为mail的所有文件或目录;
find /var/ -user root -a -group mail










