zoukankan      html  css  js  c++  java
  • 文件搜索命令

    文件搜索命令会占用大量的系统资源,尤其是在系统访问的高峰期,尽量少使用文件搜索命令,尽量把自己的目录结构划分的清晰易找

    使用文件搜索命令时,搜索范围越小越好,搜索条件越准确越好

    文件搜索命令find

    命令名称:find

    命令所在路径:/bin/find

    执行权限:所有用户

    功能描述:文件搜素

    语法:find [搜索范围] [匹配条件]

    find命令的常用选项和匹配条件

    1.根据文件名查找

    准确查找:

    find /etc -name init  在目录/etc下查找文件(目录)init

    -iname(ignore)   不区分大小写查找

    模糊查找:

    通配符:*匹配任意的字符,?匹配单个字符

    find /etc -name *init*  在目录/etc下查找文件名中包含init的文件(目录)

    find /etc -name init??  在目录/etc下查找文件名以init开头,后面有两个字符的的文件(目录)

    2.根据文件大小查询

    find / -size +204800  在根目录查找文件大小大于100MB的文件(目录)

    +n 大于n;-n 小于n;n 等于n

    命令中文件大小的单位是数据块,Linux中文件存储的最小单位是数据块,一个数据块大小为512B,lKB=两单位的数据块,100MB = 100*1024KB = 100*1024*2个数据块

    3.根据文件的所有者/用户组查找

    find /home  -user girl  在home目录下查找所有者为girl的文件(目录)

    -group  根据所属组查找

    4.根据时间属性查找

     find /etc -cmin -5  在/etc下找5分钟内被修改过属性的文件

      -amin(access) 访问时间

      -cmin(change)文件属性

      -mmin(modify)文件内容

    5.对查询结果执行操作

    find /etc -name init* -exec/-ok ls -l {} ;  查找/tec下以init开头的文件(目录)并显示他们的详细信息,{}和之间有空格

    -exec和-ok的区别:

    -exec 对查询出的结果集进行一次性操作

    -ok  对查询出的结果集中的每个结果操作前都要进行确认

    6.根据文件类型查找

    find /etc -name init* -type f  查找/etc下以init开头的文件

    f 文件;d 目录;l软链接

    8.根据i节点查找

    find -inum 55235  查找i节点为55235的文件(目录)

    此命令可以用来查看一个文件是否有硬链接

    9.多条件查询

    在两个条件之间使用选项-a(and)或者-o(or)

    find /etc -size +163840 -a -size -204800  查询/etc下大于80M小于100M的文件(目录)

    其他文件搜索命令

    1.命令名称:locate

    命令所在路径:/usr/bin/locate

    执行权限:所有用户

    功能描述:在文件资料库中中查找出文件

    语法:locate [文件名]

       -i  不区分大小写

    find命令会搜索整个文件系统,速度较慢;locate是直接在文件资料库中查找文件,速度很快;但如果一个新建文件没有更新添加到文件资料库,locate命令查不到该文件,此时必须要使用updatedb命令手动更新

    有些目录下的文件是不收录在文件资料库的,如/temp临时目录下的文件使用locate命令查不到

    locate locate命令能查询到文件资料库的位置,/var/lib/mlocate/mlocate.db

    2.命令名称:which

    命令所在路径:/usr/bin/which

    执行权限:所有用户

    功能描述:搜索命令所在目录及别名信息

    语法:which [命令]

    上图所示,rm命令的别名为rm,-i表示在执行操作是进行询问操作;命令所在路径/bin/rm,所以在执行删除文件操作时输入的命令是该命令的的别名,删除前会进行查询操作;如果直接使用/bin/rm命令,则不会有询问操作,直接将文件删除

    3.命令名称:whereis

    命令所在路径:/usr/bin/whereis

    执行权限:所有用户

    功能描述:搜索命令/配置文件所在目录及其帮助文档路径

    语法:whereis [命令/配置文件]

    passwd查询结果有两条,分别是passwd命令和passwd配置文件的路径及各自帮助文档的路径,其中文档路径中,1代表命令帮助,5代表配置文件帮助

    3.命令名称:grep

    命令所在路径:/bin/grep

    执行权限:所有用户

    功能描述:在文件中搜索字符匹配的行并输出

    语法:grep [-iv] [指定字符串] [文件]

       -i  忽略大小写

       -v  排除指定字符串

    grep -v ^# /etc/inittab  排除首行是#开头的注释;Linux文档中,以#开头的内容是注释

  • 相关阅读:
    <Yarn> <Capacity Scheduler> <Source Code>
    [Paper] LCS: An Efficient Data Eviction Strategy for Spark
    [Paper] Selection and replacement algorithm for memory performance improvement in Spark
    Zookeeper与Paxos
    Paxos工程实践
    Join Algorithm
    《c# 从入门经典》 (第6版)
    Unity Standard Assets 简介之 2D
    Unity Standard Assets 简介之 Utility
    《Invert》开发日志03:一些想法
  • 原文地址:https://www.cnblogs.com/qingyaxuan/p/6644021.html
Copyright © 2011-2022 走看看