locate,find

locate:非实时查找,模糊匹配,查找是根据全系统文件数据库进行的,可以使用updatedb命令来手动生成数据库

find:实时查找,精确匹配,支持众多查找标准,遍历指定目录中的所有文件完成查找,速度慢

find 查找路径  查找标准  查找到以后的处理运作

查找路径:默认为当前目录
查找标准:默认为指定路径下的所有文件
处理运作:默认为显示

  -name ‘[通配符]文件名’:对文件命做精确匹配
  -iname '文件名':不区分大小写
  -regex 表达式:基于正则表达式查找


  -user 用户名:根据属主查找
  -group 组:根据属组查找


  -uid UID:根据UID查找
  -gid GID:根据GID查找


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


  -type:根据文件类型查找
    f:普通文件  d:目录
    c:字符文件  b:块设备
    l:符号链接  p:管道文件
    s:套接字文件


  -size:根据文件大小查找
    [+ | -]#k:kb  
    [+ | -]#M:mb  
    [+ | -]#G:gb


  组合条件:
    -a:与
    -o:或
    -not:非
  

  元数据:
    -mtime:距..天修改 可以使用+#代表至少#天;-#代表在#天内
    -ctime:距..天创建
    -atime:距..天访问
    -mmin:分钟  -cmin:分钟  -amin:分钟

  -perm MODE:根据权限精确匹配
     /MODE:匹配任意一位即可
     -MODE:根据MODE匹配,文件权限必须包括MODE

 运作:

  -print:显示
  -ls:类似ls -l 的形似显示每一个文件的详细信息
  -ok 命令 {} ;   :固定格式ok后接要执行的命令,{}代表find找到的结果,如果要引用find找到的结果也可以用{}代替, ;固定格式。这个命令在执行时会每次都让用户确认
  -exec 命令 {} ;  :这个命令不需要用户确认

3900

  


    

初学linux,每学到一点东西就写一点,如有不对的地方,恳请包涵!
原文地址:https://www.cnblogs.com/forlive/p/8298857.html