美文网首页
从零开始学习Linux(八):其他文件搜索命令

从零开始学习Linux(八):其他文件搜索命令

作者: 通靈鹿小六 | 来源:发表于2020-11-28 07:09 被阅读0次

    1、locate

    命令作用:在文件资料库中搜索文件或目录
    命令格式:locate [关键字]

    查找qinghuaci.txt文件,执行命令

    locate qinghuaci.txt
    

    locate命令搜索的特点:

    • 从文件资料库中搜索,因此查找速度很快;
    • 文件资料库并非实时更新的,所以会出现文件存在但是查询不到的结果;
    • 如果要查找的文件在/tmp临时目录下,locate命令是查找不到的。文件资料库中不存储临时文件中的内容;
    • 如果想查询新创建的文件或目录,则需要通过updatedb命令更新文件资料库;

    在opt/song目录下面创建caihong文件,然后通过locate命令查询。结果未查询到,如下图所示:

    更新文件资料库,执行命令:

    updatedb
    

    再次查询caihong文件,文件被查询到了。

    locate查询忽略大小写。
    命令格式:locate -i [关键字]

    执行命令:

    locate -i tiantiande
    

    从上图中可以看到,直接查找tiantiande这个文件,没有任何结果。忽略掉大小写以后能够查询到Tiantiande文件。

    2、which

    命令作用:查找命令存放位置
    命令格式:which [命令关键字]

    查看mkdir命令的位置,执行命令:

    which mkdir
    

    可以看到,mkdir命令是在 /usr/bin/mkdir目录下。

    查看rm命令,执行命令:

    which rm
    

    alias是别名的意思,即当我们执行rm命令时,真正执行的是rm -i。

    3、whereis

    命令作用:查找命令存放位置以及命令的帮助信息文档所在位置
    命令格式:whereis [命令关键字]

    同时查询rm mkdir touch useradd四个命令,多个命令之间使用空格分开。执行命令:

    whereis rm mkdir touch useradd
    

    执行结果如下图所示:

    4、grep

    命令作用:在文件内查找字符匹配的行并且输出
    命令格式:grep -iv [字符串] [文件]

    • -i 不区分大小写查找;
    • -v 排除指定字符串;

    在qinghuaci.txt文件查找青花,执行命令:

    grep 青花 qinghuaci.txt
    

    在qinghuaci.txt文件中搜索包含w的行数据,执行命令:

    grep w qinghuaci.txt
    

    在qinghuaci.txt文件中忽略大小写,搜索包含w的行数据,执行命令:

    grep -i w qinghuaci.txt
    

    排除掉文件中以#开头的行数据,执行命令:

    grep -v ^# qinghuaci.txt
    

    排除掉文件中以素胚开头的行数据,执行命令:

    grep -v ^素胚 qinghuaci.txt
    

    执行过程如下图所示:

    注意:命令中^是不能缺少的。

    相关文章

      网友评论

          本文标题:从零开始学习Linux(八):其他文件搜索命令

          本文链接:https://www.haomeiwen.com/subject/wjcxwktx.html