find 命令详解

Find 命令详解

find

  实时查找工具, 通过遍历指定路径完成文件查找;

  工作特点:

    查找速度略慢

    精确查找

    实时查找

可能只搜索用户具备读取和执行权限的目录

 

语法:

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

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

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

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

 

 

查找条件:

(1)根据文件名和inode查找:

   -name “文件名称 支持使用glob

      *, ?, [], [^]

   -iname “文件名称 忽略字母大小写

   -inum n inode号查找

   -samefile name 相同inode号的文件(其实等于查找硬链接,基本不用)

   -links n 链接数为n的文件

   -regex “PATTERN” PATTERN匹配整个文件路径字符串, 而不仅仅是文件名称

 find 命令详解

(2)根据属主、 属组查找:

   -user
USERNAME
查找属主为指定用户(UID)的文件

   -group GRPNAME: 查找属组为指定组(GID)的文件

   -uid UserID 查找属主为指定的UID号的文件

   -gid GroupID 查找属组为指定的GID号的文件

   -nouser 查找没有属主的文件或目录

   -nogroup 查找没有属组的文件或目录

 find 命令详解

(3)根据文件类型查找:

   -type TYPE:

     f: 普通文件

     d: 目录文件

     l: 符号链接文件

     s 套接字文件

     b: 块设备文件

     c: 字符设备文件

     p: 管道文件

 find 命令详解

(4)组合条件:

   与: -a

   或: -o

   非: -not, !

 find 命令详解

(5)根据文件大小来查找:

   -size

      # 等于多少的文件

     +# 大于多少的文件

     -# 小于多少的文件

    find 命令详解

(6)根据时间戳:

   以“ 天” 为单位;

     -atime [+|-]#,

         #:
[#,#+1)

         +#:
[#+1,
]

         -#:
[0,#)

     -mtime

     -ctime

   以“ 分钟” 为单位:

     -amin

     -mmin

     -cmin

 find 命令详解

(7)根据权限查找:

   -perm

     222 精确匹配有222权限的文件

     -222 ugo必须全部符合

     +222 ugo有一个符合就行(cen7/222

  find -perm 755 会匹配权限模式恰好是755的文件

  只要当任意人有写权限时, find -perm +222就会匹配

  只有当每个人都有写权限时, find -perm -222才会匹配

  只有当其它人( other 有写权限时, find -perm
-002
才会匹配

 find 命令详解

处理动作:

  -print 默认的处理动作, 打印至屏幕;

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

  -delete 删除查找到的文件;不能删除非空目录

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

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

     对于每个文件执行命令之前, 都会交互式要求用户确认

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

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

   ;是固定用法

 find 命令详解

注意:

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

   2)有些命令不能接受过多参数, 此时命令执行可能会失败, 下面方式可规避此问题

        find | xargs COMMAND(生产常用的操作方式)

find 命令详解

 

原创文章,作者:张 洁,如若转载,请注明出处:http://www.178linux.com/73030

(1)
张 洁张 洁
上一篇 2017-04-09
下一篇 2017-04-10

相关推荐

  • Linux基础知识

    命令的语法通用格式: # COMMAND OPTIONS ARGUMENTS COMMAND:  发起一命令:请求内核将某个二进制程序运行为一个进程; 程序 –> 进程 静态 –> 动态(有生命周期) 命令本身是一个可执行的程序文件:二进制格式的文件,有可能会调用共享库文件; 多数系统程序文件都存放在:/bin,…

    Linux干货 2016-10-29
  • 第二周的作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 命令:ls NAME:用于列出目录的内容; SYNOPSIS:ls [OPTION]… [FILE]… FILE: 如果FILE是个文件的话,则显示文件名; 如果FILE是个目录的话,则列出目录的内容; OPTION: -l:显示长格式的信息,一共包含了7个…

    Linux干货 2016-11-23
  • 网络yum源的配置

    1.准备: 光盘 包 元数据 2.网络服务http(s)  ftp 查看是否安装  which  vsftp;  ls  /misc/cd/Packages | grep vsftpd 安装  rpm  -ivh  /misc/cd/Packages/vsftpd… …

    2017-06-13
  • grub.config文件加密

    作用 在开机启动临时进入1模式的时候,系统先调用/etc/grub.conf。 /etc/grub.conf其实是/boot/grub/grub.conf的软连接。 加密改文件就有效的防止其他用户直接绕过口令登陆1模式,从而进入到root中做一些破坏。 我们可以看一下如何进入1模式。   我们可以看一下临时进入init1模式的窗口 这里的内容与gr…

    2017-07-22
  • grep简述

    grep(Globel Search Regular Expression and Printing out the line) 它能使用正则表达式搜索文本,并把匹配的行打印出来。 grep包括grep、egrep和fgrep。 egrep表示扩展的grep,相比grep支持更多的匹配模式, “grep -E”相当于egrep。 fgrep是fast gre…

    2017-04-06
  • N21沉舟11周作业

    1、请描述一次完整的http请求处理过程; (1) 建立或处理连接:接收请求或拒绝请求 (2) 接收请求: (3) 处理请求:对请求报文进行解析,并获取请求的资源及请求方法等相关信息 (4) 访问资源:获取请求报文中请求的资源 (5) 构建响应报文 (6) 发送响应报文 (7) 记录日志 …

    Linux干货 2016-09-26

评论列表(1条)

  • renjin
    renjin 2017-04-12 11:14

    详细的总结介绍了find命令的用法,内容很好,建议将命令或代码块入到”插入程序代码”中,文字上注意下缩进