zoukankan      html  css  js  c++  java
  • 10find

    基本框架:

    a)         Find命令一般格式

    b)         Find 常用表达式:条件表达式和操作表达式

    c)         find逻辑表达式:与或非

    10.1    find命令一般格式

               Find  pathname  –expressions

               特点:   1) find 对文件名进行查找,而grep是对文件内容进行查找

                        2)Find对树形目录层次结构递归搜索

                        3)当在shell环境下只输入find的话,默认的路径是当前路径,默认的操作表达式是-print

    10.2    Find 常用表达式

            主要包括两种:条件表达式和操作表达式

    1)条件表达式:

    u  -name pattern(最常用)

            当文件名与pattern相同时,返回true,否则false

    u  -type  t :搜索指定类型的文件

            文件类型可以是f(普通文件)、d(目录)、l(符号链接文件)

    u  -user usr

            检查当前的文件的拥有者或UID是否是usr

    u  -mtime

            -mtime -4  最近4天内修改的文件

            -mtime +4  4天前修改的文件

    u  -size

            -size  +5k    大于5k的

            -size  -5k     小于5k的

           

            2)操作表达式:

    u  -exec  cmd  {}  ;

    u  -print   打印文件名

      例子:搜索当前目录下的所有文件名以txt结尾的文件,然后将其删除,并将其打印出来。

             Find .  –name  ‘*.txt’  –type  f  -exec  rm  –f  {}  ;  -print

    说明:

      {}  表示搜索到的文件列表

    ;  分号用来表示一个命令的结束,又因为;对shell来说是特殊的字符,所以要在;号前加上转义字符

    10.3    find逻辑表达式

            前面的条件表达式和操作表达式可以通过逻辑运算连接在一起。

    u  e1  –a  e2    逻辑与运算,仅当e1为真时,对e2求值

    u  e1  e2        同上

    u  e1  –o  e2    逻辑或运算,仅当e1为假时,对e2求值

    u  e1  ,  e2      逗号表达式,对两个表达式均求值,先e1,后e2

    u  ! e1           逻辑非运算

    10.4    Find示例

           1)将文件名以A/a打头或者以A/a结尾的文件给打印出来

              Find  .  –type  f  (  -name ‘[Aa]*’  -o  –name  ‘*[Aa]’  )  -print

    2)统计etc目录下所有文件内容包含telnet的文件的个数,其中telnet 不区分大小写。

    Find  /etc   -type  f  -exec  grep  –li  ‘telnet’  {}  ;  | wc  -l

    解释:

    l的作用:使grep只输出查找到的文件名。

    一个文件名就代表一个文件,有多少个文件名就代表有多少个文件。

  • 相关阅读:
    启用Netlogon debug,查看服务器验证瓶颈
    Windows Server 2016调整网卡顺序
    AD用户添加到组
    客户端查看/修改所属站点
    OpenCV相关库
    《塔木德》笔记
    《如何阅读一本书》笔记
    《创业维艰》笔记
    《社会心理学》笔记
    《智能商业》笔记
  • 原文地址:https://www.cnblogs.com/xieyang/p/3919537.html
Copyright © 2011-2022 走看看