zoukankan      html  css  js  c++  java
  • Linux常用命令详解(二) -- 查找常用命令

    locate:
        作用:在后台数据库中按文件名搜索,搜索速度更快
        命令格式:locate 文件名
        选项或参数:
                -l    num(要显示的行数)
                -f   将特定的档案系统排除在外,如将proc排除在外
                -r   使用正则运算式做为寻找条件
        补充:
                 /var/lib/mlocate     locate命令所搜索的后台数据库
                 updatedb                  更新数据库(数据库每天更新一次,使用此命令可强制更新)
        

    find:
        作用:在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符中的完全匹配(*)进行匹配。
        命令格式:find [搜索范围] [搜索条件]
        选项或参数:
                -name       按文件名查找
                -iname      按文件名查找,但不区分大小写
                -user        按所有者查找
                -nouser    查找没有所有者文件
                -mtime     修改文件内容
                -atime      查找文件访问时间
                -ctime      改变文件出现
                -size         指定文件大小
                -inum        制定节点的文件
        补充:
                  (减号- 代表在什么时间内     加号+  代表在什么时间以前)
                 find /etc-size +20k -a -size -50k
                         查找/etc/目录下大于20kb并且小于50kb的文件
                         -a    逻辑与,两个条件都满足
                         -o    逻辑或,两个条件满足一个即可
                 find /etc-size +20k -a -size -50k -exec ls -lh {} ;
                         查找/etc/目录下大于20kb并且小于50kb的文件并显示详细信息
                         -exec/-ok 命令 {} ;    对执行结果进行操作
        
                 
    grep:
        作用:在文件中搜索符合条件的字符串,使用正则表达式进行匹配
        命令格式:grep [选项] 字符串 文件名
        选项或参数:
                -i     忽略大小写
                -v    排除指定字符串
        

    which:
        作用:搜索命令所在路径及别名
        命令格式:which 文件名
        选项或参数:
                -n  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
        

    whereis:
        作用:搜索命令所在路径及帮助文档所在位置
        命令格式:whereis 命令名
        选项或参数:
                 -b    定位可执行文件。
                 -m    定位帮助文件。
                 -s     定位源代码文件。
                 -u    搜索默认路径下除可执行文件、源代码文件、帮助文件以外的其它文件。

    通配符:
        *    匹配任意内容
        ?    匹配任意字符
        []    匹配任意一个中括号内的字符


    PS:
             which:在指定的路径中,搜索某个系统命令的位置,并返回第一个搜索结果。可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
             whereis:只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。
                              whereis及locate都是基于系统内建的数据库进行搜索,因此效率很高,而find则是遍历硬盘查找文件。

             locate:通过搜寻系统内建文档数据库达到快速找到档案,数据库由updatedb程序来更新,updatedb是由cron daemon周期性调用的。
                           默认情况下locate命令在搜寻数据库时比由整个由硬盘资料来搜寻资料来得快,如果locate所找到的档案若是最近才建立或刚更名的,可能会找不到。
                           在内定值中,updatedb每天会跑一次,可以由修改crontab来更新设定值。(etc/crontab)。

            find:在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符中的完全匹配(*)进行匹配。

            grep:在文件中搜索符合条件的字符串,使用正则表达式进行匹配。

  • 相关阅读:
    markdown
    显示数学公式
    iOS----时间日期处理
    OC中文件读取类(NSFileHandle)介绍和常用使用方法
    深刻理解----修饰变量----关键字
    iOS----轻松掌握AFN网络顶级框架
    iOS
    iOS--多线程之线程间通讯
    iOS--多线程之NSOperation
    iOS--多线程之GCD
  • 原文地址:https://www.cnblogs.com/JealousGirl/p/find.html
Copyright © 2011-2022 走看看