find命令

语法:

find [OPTION]... [查找路径] [查找条件] [处理动作exec

 

查找路径:指定具体目标路径;默认为当前目录 

查找条件:指定的查找标准,可以文件名、大小、类型、权限等标准进行;默认为找出指定路径下的所有文件

处理动作:对符合条件的文件做操作,默认输出至屏幕   

 

 locate:跟whatis

     依赖于数据库,自动更新数据库,非实时查找,结果非精确,查找速度快,模糊查找

     updatedb 手动生成数据库

 

 find

     实时查找:速度慢

     精确匹配

 

   查找条件:

     -name ”文件名称“:支持使用gloab(文件通配)

     -iname "文件名称":查找时不区分大小写

     -inum n inode号查找

    -samefile name 相同inode号的文件

    -links n 链接数为n的文件

     -user UserName:根据属主查找

     -group GroupName:根据属组查找

     -uid UID:根据属主的UID查找

     -gid GID:根据属组的GID查找

     -nouser:查找没有属主的文件

     -nogroup:查找没有属主的文件

    -maxdepth level 最大搜索目录深度

      -mindepth   level 最小搜索目录深度

    -regex "pattern" 基于正则表达式查找文件

 

  -type: 根据文件类型查找

      f:普通文件

      d:目录

      b:块设备

      c:字符设备

      l:符号链接文件

      p:命令管道

      s:套接字

 

空文件或目录

-empty

     

-size:根据文件大小查找在单位内的

          -size [+|-]#unit

          例如 -size+2M,大于3MB

  常用单位k.M,G

  1M表示(0-1M)之间的所有的文件

  #:(#-1)<x<=#

     

 

 

根据时间戳来查找:

       以天为单位(time):

         -atime [+|-]# 访问时间

     +#:表示(#+1)天之外被访问过

     -:表示#天内被访问过的

     无符号:表示短于(#+1)>x>=#天的时间段被访问过

 -ctime       改变时间

 -mtime       修改时间

       以分钟为单位(min)

           -amin:

   -mmin:

   -cmin:

     

根据权限查找:

       -perm [+|-]MODE

           MODE:  精确匹配

  +MODE:任何一类用户的任何一位权限匹配即可,常用于查找某类用用户的某特定权限是否存在

  -MODE: 每类用户的指定要检查的权限位都匹配

             

      文件权限:644

      -perm 600:否

      -perm +222:是,查找用户有写权限

      -perm +002:否,不匹配,0表示不查看

               -perm -444,是

 

 

    

  组合条件:在要要查找的选项前面加

 

            -a:与。同时满足,可省略

 -o:或,满足一个即可

 -not,!非。取反

 A,并且非B:非(AB

 -not -user hadoop-0 iname ”*.txt“

 

德·摩根定律:

 (非 A) 或 (非 B) = 非(A 且 B)   

 (非 A) 且 (非 B) = 非(A 或B)  

示例: 

!A -a !B = !(A -oB)  !A -o !B = !(A -a B)

 

 

处理动作:

 

-print:默认的处理动作,显示至屏幕

-ls:类似于对查找到的文件执行“ls -l”命令

-delete:删除查找到的文件

-flsfile:查找到的所有文件的长格式信息保存至指定文件中

-okCOMMAND {} \; 对查找到的每个文件执行由COMMAND指定的命令,对于每个文件执行命令之前,都会交互式要求用户确认

 

-execCOMMAND {} \; 对查找到的每个文件执行由COMMAND指定的命令

 {}: 用于引用查找到的文件名称自身

find传递查找到的文件至后面指定的命令时,查找到所有符合条件的文件一次性传递给后面的命令 

阅读更多

没有更多推荐了,返回首页