find—查找条件

find—查找条件

  

 

一、根据时间戳查找:

二、根据权限查找

三、根据文件所属人owner,文件所属组group查找

四、根据搜索层级查找

五、根据文件名查找

六、根据文件类型查找

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

1)工作特点:

查找速度略慢

精确查找

实时查找

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

2)语法:

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

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

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

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

本文主要针对查找条件进行详细解释


一、根据时间戳:

1、以“天”为单位

  时间戳:atime 访问时间

       mtime 文件数据修改时间

       ctime 文件元数据修改时间

2、以“分钟”为单位

         -amin 

         -mmin

         -cmin

3、参数

   ( 代表大于  

         )代表小于 

     [代表大于等于

     ]代表小于等于 

         例如(03],表示大于0,小于等于3

   #:[#,#+1)

+#: [#+ 1,]

  -#: [0,#)  

4、例子

1)查找app目录中在一天之内修改过的文件

     find /app –mtime -1

     wKiom1mQW52C_gN5AAAO7SA-6hc808.png

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

      分析:find的运用格式为find 录(不写目录则默认当前目录) 查找条件–mtime等)查找-1用法是小于一天,即[0 ,1

      注:查找条件可以用其他时间

二、根据权限查找

1、-perm   /mode:精确权限匹配

    +mode[/mode]任何一类(u,g,o)对象的权限中只要能一位匹配即可,或关系,+centos7开始淘汰,所以本文直接用centos6 centos7 中通用的 演示例子

2-perm   -mode:精确权限匹配

3、例子

1)找出当前目录下 user有读权限或者其他人有写权限的文件

find—查找条件

分析:不写路径的默认当前路径    4代表读权限;2代表写权限;1代表执行权限

 /代表各个位上是或关系,

<1> user位上是4代表读权限,只要user上有读权限的都可以满足条件

<2>其他人为写权限的文件也满足条件。

<3>当有0时不用管这一位。

<4>三个位置之间的关系是或关系,除去0位置上,其他任意位满足条件即可。即查找文件的条件必须是,user位上有读权限或所    有人位上有写权限,所以全部文件都满足条件。前面的点“ .”代表当前目录。

2)找出当前目录下 user有读权限且其他人有写权限的文件

find -perm -401

find—查找条件

分析:代表各个位上是或关系

<1> user位上是4代表读权限,user上必须有读权限才可以满足条件;

<2>其他人位上必须有写权限的文件才满足条件。

<3>当有0时不用管这一位。

<4>三个位置之间的关系是与关系,即查找文件的条件必须是,user位上有读权限且所有人位上 有写权限,所以只有file2file3

三、根据文件所属人(owneruser,文件所属组group查找

  1、例子

   (1)找出当前目录中所属人为root的文件

 find—查找条件

分析:当在查找所属人时加上-user 后面加上所属人

    (2)找出当前目录中所属组为guan的文件

    find—查找条件

 

         分析:当在查找所属组时加上-group 后面加上所属组

四、根据搜索层级查找:

  1、当查找的目录太大,比如根目录,当只想查找根一级目录下的问价你,需要下面层级限制

    -maxdepth level 最大搜索目录深度,指定目录为第1

    -mindepth level 最下搜索目录深度

  2、例子

     (1)查找根目录一级目录权限user有读权限且其他人有写权限的文件

    find / -maxdepth 1 -perm -401

   find—查找条件

  (2-mindepth 对于最小搜索目录的意义不大,因为find的搜索属于贪婪模式,如果不指定最大的搜索目录时,会自动的向下一个目录搜索。

五、根据文件名查找:

     1、-name “文件名称”:支持使用glob   *, ?, [], [^]

      2、例子

       (1)找出etc目录下一级目录中所有以.txt结尾的文件

       find—查找条件

        分析:在搜索文件名时,在前面加上-name  ,对于模糊搜索,需要加双引号“”,*代表任意字符,一位。不能被识别,所      以需要\转译

       (2)找出etc目录中所有名为a.txt的文件

         find—查找条件

        分析:当搜索具体名字时不需要加双引号

六、根据文件类型查找:

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

     2、例子

         (1)找出etc一级目录下的目录问价

           find—查找条件

        分析:使用find查找时,当查找给路径时,查找到的文件显示是绝对路径;当没有给出路径,即当前路径下,查找到的文件       显示是相对路径

   

 




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

(1)
guanmanguanman
上一篇 2017-08-13
下一篇 2017-08-13

相关推荐

  • ​文件共享服务之FTP

    文件共享服务之FTP 文件共享服务之FTP 一、什么是文件共享服务 二、FTP 三、响应码 四、FTP存储和mysql存储有什么不同? 五、用户认证 六、FTP安装与配置 一、什么是文件共享服务 简单理解就是文件或存储块设备可以共享给大家使用。  1、实现共享服务有三种! (1)ftp:属于应用层服务,可以跨平台使用(linux<—&gt…

    Linux干货 2016-04-18
  • N25期第七周作业

    创建一个10G分区,并格式为ext4文件系统   要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳 fdisk /dev/sdb # size 10G type 83 mke2fs -t ext4 -b 20…

    Linux干货 2017-02-28
  • linux 目录结构

    该文章主要来自于网络资料进行整理 目录结构参考地址: http://www.iteye.com/topic/1125162 http://yangrong.blog.51cto.com/6945369/1288072 http://itlab.idcquan.com/linux/administer/939529_1.html http://itlab.id…

    系统运维 2015-12-19
  • 第一周博客作业-Linux发行版历史、哲学思想、FHS、命令格式、帮助等

    All + All – 第一周作业 1.计算机组成及功能 计算机组成 硬件 冯诺依曼体系 CPU 运算器 对数据做算暖苏运算和逻辑运算 控制器 寄存器等 程序的运行,是CPU通过调用硬盘中的程序至内存中执行来实现的 存储器 内存 ROM RAM 外存 硬盘 光盘 输入设备 鼠标、麦克风等 实现指令和参数的输入 输出设备 显示器、打印机等 实现结果…

    Linux干货 2017-07-02
  • N26第三周博客作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。    who | cut -d' ' -f1 | sort -u 2、取出最后登录到当前系统的用户的相关信息。    last | head -1   3、取出当前系统上被用户当作其默认s…

    Linux干货 2017-02-03
  • Linux学习小结 1

    一、描述计算机的组成及其功能 计算机由硬件和软件组成: 1、硬件组成又分为: 中央处理器(CPU):功能主要是解释计算机指令以及处理计算机软件中的数据, 中央处理器主要包括运算器(算术逻辑运算单元,ALU,Arithmetic Logic Unit)和高速缓冲存储器(Cache)及实现它们之间联系的数据(Data)、控制及状态的总线(Bus)内部存储器(Me…

    Linux干货 2017-06-27