find - search for files in a directory hierarchy

find命令用于在目录层级中查找文件

SYNOPSIS

find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path...] [expression]

简单用法:

find PATH EXPRESSION

EXPRESSION

Numeric arguments can be specified as

+n    for greater than n,

-n    for less than n,

n      for exactly n.

选项太多不一一列举,常用的在下面的示例中说明,要深究的话建议查看帮助手册(英文描述其实更地道,翻译成中文有时反而难以理解,可能大家看到过一个词“句柄”,不知道大家是怎么理解的,反正我是无法理解,语句?手柄?)

EXAMPlES

1.按文件名查找,支持通配符
find 目录 -name "pattern"
2.按文件名查找,同时忽略大小写
find 目录 -iname "pattern"
3.按所属用户查找
find 目录 -user "pattern"
4.按所属用户组查找
find 目录 -group "pattern"
5.查找所属用户指定的UID的文件
find 目录 -uid "pattern"
6.查找所属用户指定的UID的文件
find 目录 -gid "pattern"
7.查找无用户的文件
find 目录 -nouser "pattern"
8.查找无用户组的文件
find 目录 -nogroup "pattern"
9.按文件类型查找
find 目录 -type TYPE

TYPE:

  • f: 普通文件
  • d: 目录文件
  • l:符号链接文件
  • b:块设备 文件
  • c:字符设备文件
  • p:管道文件
  • s:套接字文件
10.按文件大小查找,+表示>,-表示<
find 目录 -size [+|-]n[cwbkMG]]
  • b: for 512-byte blocks (this is the default if no suffix is used)
  • c: for bytes
  • w: for two-byte words
  • k: for Kilobytes (units of 1024 bytes)
  • M: for Megabytes (units of 1048576 bytes)
  • G: for Gigabytes (units of 1073741824 bytes)
11.按时间戳(天数)查找,-atime(访问天数)-ctime(change天数)-mtime(修改天数)
find 目录 -atime [+|-]n

find 目录 -ctime [+|-]n

find 目录 -mtime [+|-]n
12.按时间戳(分钟)查找,-amin(访问分钟)-cmin(change分钟)-mmin(修改分钟)
find 目录 -amin [+|-]n

find 目录 -cmin [+|-]n

find 目录 -mmin [+|-]n
13.按权限查找
  • mode:精确匹配

  • /mode:任何一类用户(u,g,o)的权限中的任何一位(r,w,x)符合条件即满足;9位权限之间存在“或”关系;

  • -mode:每一类用户(u,g,o)的权限中的每一位(r,w,x)同时符合条件即满足;9位权限之间存在“与”关系;

find 目录 -perm [/|-]mode
选项组合
-a:与

-o:或

-not/!:非
处理动作
-exec 命令... {} \;
#示例:查找当前目录下.txt后缀,并且1天内修改过的文件
find ./ -name "*.txt" -a -mtime -1 -exec ls -lh {} \;
注意

find传递查找到的文件路径至后面的命令时,是先查找出所有符合条件的文件路径,并一次性传递给后面的命令;但是有些命令不能接受过长的参数,此时命令执行会失败;

另一种方式可规避此问题:

find | xargs COMMAND

Linux-文件查找命令find的更多相关文章

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

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

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

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

  3. Linux文件查找命令

    1. find find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件. find的使用格式如下: $ find <指定目录> <指定条件> <指定动作> ...

  4. Linux文件查找命令具体解释-which whereis find locate

    原创BLog.转载请注明出处 http://blog.csdn.net/hello_hwc? viewmode=contents which命令 首先查看man which的说明 which - sh ...

  5. Linux 文件查找命令详解

    find命令 Linux find命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将 ...

  6. Linux文件查找命令find(转)

    Linux find命令用来在指定目录下查找文件.任何位于参数之前的字符串都将被视为欲查找的目录名.如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件.并且将查找到的子目录 ...

  7. Linux文件查找命令 find 详解

    关于find命令 由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下.即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应的权 ...

  8. Linux文件查找命令find,xargs详述

    目录: 一.find 命令格式 1.find命令的一般形式为: 2.find命令的参数: 3.find命令选项: 4.使用exec或ok来执行shell命令: 二.find命令的例子: 1.查找当前用 ...

  9. locate linux文件查找命令

    locate 让使用者可以很快速的搜寻档案系统内是否有指定的档案.其方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就只需查询这个数据库,而不必实际深入档案系统之中了.在一般的 di ...

  10. Linux文件查找命令find和xargs详解

    PS:find是个很强大的命令,能够匹配正则,查找对应权限,能够帮你精确的定位你的系统中的任何地方任何目录下的文件.下面这篇是关于find命令用法最详细的一篇了,记录下.还有要注意的:本文的分号:其实 ...

随机推荐

  1. 没加载redis类,却可以实例化redis

    原因:phpinfo里面已有redis扩展

  2. Spring IOC(四)FactoryBean

    Spring IOC(四)FactoryBean Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html) 一般情况下,Spring ...

  3. debian9安装mysql mariadb

    debian9下mysql 替换成mariadb-server-10.1 不过两者类似 具体可见 <MySQL和mariadb区别> http://ask.chinaunix.net/qu ...

  4. POI导出大量数据的简单解决方案

    说明:我的电脑 2.0CPU 2G内存 能够十秒钟导出 20W 条数据 ,12.8M的excel内容压缩后2.68M 我们知道在POI导出Excel时,数据量大了,很容易导致内存溢出.由于Excel ...

  5. Tomcat新问题 还没有解决:the apr based apache tomcat native librariy which allows optional perf...........

     问题信息详细: 2012-5-18 18:41:54 org.apache.catalina.core.AprLifecycleListener init 信息: The APR based Apa ...

  6. 【WebService】WebService之WSDL文档深入分析(三)

    WSDL概念 WSDL(网络服务描述语言,Web Services Description Language)是一门基于 XML 的语言,用于描述 Web Services 以及如何对它们进行访问. ...

  7. 【C#】解析C#程序集的加载和反射

    目录结构: contents structure [+] 程序集 程序集的加载 发现程序集中的类型 反射对类型成员的常规操作 发现类型的成员 创建类型的实例 绑定句柄减少进程的内存消耗 解析自定义特性 ...

  8. mybatis学习 十三 resultMap标签 一对一

    1 .<resultMap>标签 写在mapper.xml中,由程序员控制SQL查询结果与实体类的映射关系. 在写<select>标签中,有一个resultType属性,此时s ...

  9. HYSBZ - 3676

    模板题.问你一个串里最大的值(回文子串*出现次数) /* gyt Live up to every day */ #include<cstdio> #include<cmath> ...

  10. mysql 数据插入优化方法(concurrent_insert=2)

    当一个线程对一个表执行一个DELAYED语句时,如果不存在这样的处理程序,一个处理器线程被创建以处理对于该表的所有DELAYED语句.通常来说,在MyISAM里读写操作是串行的,但当对同一个表进行查询 ...