码迷,mamicode.com
首页 > 其他好文 > 详细

the "find" which you should kown that how to use it

时间:2015-09-01 00:06:11      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:should   数据库   周期性   资源   

1.文件查找:
     在文件系统上查找符合条件的文件
     文件查找的相关命令:
        locate: 非实时查找(基于索引在数据库中的查找)
        find  : 实时查找
2.locate命令:
     依赖于事先构建的索引:索引的构建是在系统较为空闲的时候自动进行的(周期性任务),你需要手动的更新数据库(命令:updatedb)
     索引的构建过程需要遍历整个文件系统,极消耗资源

     模式:locate [OPTION]...  PATTERN...
           locate KEYWORD
3.find命令:
    实时查找工具,通过便利指定路径下的文件系统完成文件查找(如果你事先并没有限制文件类型,则默认显示所有的类型文件)
    模式:
        find [OPTION]... [查找路径] [查找条件] [处理动作]
            查找路径:指定具体的目标路径,默认为当前路径目录(包括此目录本身)
            查找条件:指定的查找标准,可以为文件名,大小,类型,权限等标准进行;默认为找出指定路径下的所有文件
            处理动作:对符合条件的文件做什么操作,默认输出至屏幕
    1.查找条件:
            1).根据文件名查找:
                  -name "文件名称":支持使用glob
                                *,?,[],[^]
                  -iname "文件名称":不区分字母大小写
                  -regex "PATTERN":以PATTERN匹配整个文件路径字符串,为不仅仅是文件名称
            2).根据属主,属组查找:
                  -user USERNAME:
                  -group GRPNAME:
                  -uid UserID:
                  -gid GrpID :
                  -nouser:
                  -nogroup:
            3).根据文件类型查找:
                  -type TYPR:
                       f
                       d
                       l
                       s
                       b
                       c
                       p
            4).组合条件
                  -a:与
                  -o:或
                  -not:非
            5).根据文件大小来查找
                  -size [+|-]# UNIT
                        常用单位:K,G,M

                      #UNIT:(#-1,#]
                      -#UNIT:[0,#-1]
                      +#UNIT:[#,OO]
            6) .根据时间戳查找
                  以"天"为单位:
                     -atime [+|-]#:仅给#表示[#,#-1]
                                   +#表示[#+1,oo]
                                   -#表示[0,#]
                     -mtime [+|-]#
                     -ctime [+|-]#
                  以"分钟"为单位:
                     -amin
                     -mmin
                     -cmin
            7).根据权限查找
                  -perm [/|-]MODE
                        MODE:精确匹配
                        /MODE:(有"或"的意义)任何一类(u,g,o)对象的权限中只要有一位匹配即可
                        -MODE:(有"与"的意义)每一类对象必须同时拥有为其指定的权限标准
        2.处理动作
            -print:默认的处理动作,显示至屏幕
            -ls   :类似于对查找到的文件执行"ls -l"命令
            -delete:删除查找到的文件
            -fls /path/to/somefile:查找到的所有文件的长格式信息保存至指定文件中
            -ok COMMAND {} \ :对查找的每个文件执行由COMMAND指定的命令,对于每个文件执行命令之前,都会交互式要求用户确认
            -exec COMMAND {} \:对查找到的没个文件执行由COMMAND指定的命令,但不需要与用户进行交互。
                  (注:花括号表示查找的文件名称自身)
注意:find传递查找到的文件至后面指定的命令时,查找到所有符合条件的文件一次性传递给后面指令,有些指令不能接受过多参数,此时命令执行可能会失败                 
      另一种方式可规避此问题
         find | xargs COMMAND
        


本文出自 “fante” 博客,请务必保留此出处http://8755097.blog.51cto.com/8745097/1690275

the "find" which you should kown that how to use it

标签:should   数据库   周期性   资源   

原文地址:http://8755097.blog.51cto.com/8745097/1690275

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!