一、locate

locate基于数据库索引来查找文件,数据库在开机时一段时间对更新,不会实时更新,数据库存放在(/var/lib/mlocate/mlocate.db),可以用updatedb来手动更新数据库。

优缺点:

  1. 查找速度快
  2. 模糊查找
  3. 非实时查找
  4. 搜索的是文件的全路径
  5. 只搜索用户具备读权限和执行权限的目录

locate KEYWORD

选项:

-i:不区分关键字大小写

-n #:打印匹配到的前#行

-r:使用正则表达式

二、find

find查找会实时遍历磁盘,对服务器性能会有很大影响,使用时应该注意服务器的负载

优缺点:

  1. 查找速度慢,影响性能
  2. 精确查找
  3. 实时查找
  4. 只搜索用户具备读权限和执行权限的目录

find  【查找路径范围】【选项】【查找条件】【处理操作】

查找路径,默认为当前工作路径

1、查找条件

可以指定查找文件的文件名、大小、类型、权限等等指定条件

  1. --maxdepth #:最大搜索目录深度
  2. --mindepth #:最小搜索目录深度
  3. -name:指定文件名
  4. -iname:忽略文件名大小写
  5. -inum #:指定inode号
  6. -samefile FILE:指定和另一个文件相同的inode号,查找一个文件的硬链接
  7. -links #:指定查找有#个链接数的文件
  8. -regex "PATTERN":使用正则表达式匹配
  9. -user USERNAME:查找指定所属者的文件
  10. -group GROUPNAME:查找指定所属组的文件
  11. -uid UID:查找指定UID的文件
  12. -gid GID:查找指定GID的文件
  13. -nouser:查找没有所属者的文件
  14. -nogroup:查找没有所属组的文件
  15. -type:根据文件类型查找
    • f:普通文件
    • d:目录
    • l:符号链接
    • s:套接字文件
    • b:块文件
    • c:字符文件
    • p:管道文件
  16. -empty:查找空文件
  17. -size:按文件大小查找(c,k,M,G)
    • #:(#-1,#]
    • -#:[0,#-1]
    • +#:(#,+∞)
  18. -atime:按文件各时间查找(天)
    • #:[#,#+1)
    • +#:[#+1,∞]
    • -#:[0,#)
  19. -mtime
  20. -ctime
  21. -amin:按文件各时间查找(分钟)
  22. -mmin
  23. -cmin
  24. -perm 权限匹配
    • MODE 精确匹配
    • /MODE ugo是或者的关系
    • -MODE ugo是并且的关系,包含关系
  25. 组合添加查找
    • -a:并且
    • -o:或者
    • -not|!:不是

2、处理操作

对匹配到的文件做相应的操作,默认操作为输出到终端

-print:默认处理,打印到终端

-ls:以长格式列出文件

-delete:删除文件,不提示!

-fls NEWFILE:将长格式的文件列表保存到NEWFILE == -ls >NEWFILE

-ok CMD {} \;:指定处理动作,提示

-exec CMD {} \;:指定处理动作,不提示!

记录于2018.4.12 11:57

linux文件查找find的更多相关文章

  1. Linux文件查找.md

    Linux 文件查找 在Linux系统的查找相关的命令: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查询文件名称 w ...

  2. Linux文件查找命令find用法整理(locate/find)

    Linux文件查找查找主要包括:locate和find 1.locate 用法简单,根据数据库查找,非实时,用法: locate FILENAME 手动更新数据库(时间可能较长) updatedb 2 ...

  3. linux文件查找find命令

    linux文件查找find命令 1.文件查找 基本介绍 在文件系统上查找符合条件的文件 linux上常见的文件查找工具:find命令 查找分类 实时查找 精确查找 基本语法 find  [option ...

  4. linux 文件查找,which,whereis,locate,find

    linux 文件查找,which,whereis,locate,find 一:which 主要用于查找可执行命令的所在位置: 如图,查找命令 ls的目录: 二:whereis 主要用于查找命令的帮助文 ...

  5. Linux文件查找命令find,xargs详述【转】

    转自:http://blog.csdn.net/cxylaf/article/details/4069595 转自http://www.linuxsir.org/main/?q=node/137 Li ...

  6. Linux文件查找

    Linux下查找文件的命令有两个; locate: find : locate这个命令对其生成的数据库进行遍历(生成数据库的命令:updatedb),这一特性决定了查 找文件速度很快,但是locate ...

  7. Linux文件查找工具之find “大宝剑”--转载

    原文地址:http://xinzong.blog.51cto.com/10018904/1749465 一.文件查找工具常用软件 locate: locate命令其实是find -name的另一种写法 ...

  8. linux - 文件查找及压缩

    文件查找: 1.  which    查找可以执行文件,只搜索$PATH里的目录 $ which ls /bin/ls which只搜索$PATH里的目录,如果搜索当前目录的文件是没有任何结果的 $ ...

  9. Linux 文件查找

    在Linux系统的查找相关的命令: which 查看可执行文件的位置 whereis 查看文件的位置 locate 配合数据库查看文件位置 find 实际搜寻硬盘查询文件名称 whereis wher ...

  10. linux文件查找及操作

    在linux下查找文件的办法最常用的就是find指令,让我们来看一下find指令如何来使用吧: find find . -name  txt             //在当前目录查找名字为txt的文 ...

随机推荐

  1. leetcode 205. Isomorphic Strings(哈希表)

    Given two strings s and t, determine if they are isomorphic. Two strings are isomorphic if the chara ...

  2. 【二叉查找树】05根据升序的链表构造二叉查找树【Convert Sorted List to Binary Search Tree】

    利用递归,构造二叉查找树, ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 给一个 ...

  3. CH6802 車的放置 和 CH6B24 Place the Robots

    6802 車的放置 0x60「图论」例题 描述 给定一个N行M列的棋盘,已知某些格子禁止放置.问棋盘上最多能放多少个不能互相攻击的車.車放在格子里,攻击范围与中国象棋的"車"一致. ...

  4. XP系统下显示文件或文件的安全选项卡

    在很多的时候,我们需要设置文件或文件夹的权限,这里一般就要用到安全选项卡,但在xp系统下,默认是不显示的,如何调出我们的“安全”选项卡呢? 具体做法:点击“工具”菜单下的"文件夹选项(o). ...

  5. github 在线 创建文件夹

    参考: http://webapps.stackexchange.com/questions/36411/create-a-folder-in-github-via-the-web-interface

  6. POJ1379:Run Away

    我对模拟退火的理解:https://www.cnblogs.com/AKMer/p/9580982.html 我对爬山的理解:https://www.cnblogs.com/AKMer/p/95552 ...

  7. oracle rac搭建

    (一)环境准备 主机操作系统 windows10 虚拟机平台 vmware workstation 12 虚拟机操作系统 redhat 5.5 x86(32位) :Linux.5.5.for.x86. ...

  8. Centos6.5 安装pip

    1.下载 sudo wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate 2.安装  python get-pip.py 参 ...

  9. 杂项:Webpack

    ylbtech-杂项:Webpack 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler).当 webpack 处理应用程序时,它会递归地 ...

  10. libvirt, libvirt-python, libvirtd 关系浅析

    libvirt 官方解释:  http://libvirt.org/ 见分隔线以下. 我的理解:libvirt 作为一个中间层,封装了对下层虚拟化 hypervisor 的操作方法.也就是说,无论你是 ...