zoukankan      html  css  js  c++  java
  • which/whereis/whatis/locate/find的区别

    which--在$PATH目录下查找文件

    whereis--在预定目录下(whereis -l查看)查找文件

    whatis--将man手册NAME节区下的那句描述的话打印出来

    locate--在数据库中查找目录或文件

    find--遍历目录查找文件

    说明:

    1.关于which和whereis查找原理:

    都说which查找可行文件,whereis查找可执行文件、源码和man手册。经测试证明which和whereis都只是在设定的目录下简单地匹配字符串,并不会真的去确认找到的文件是不是真正的可执行文件、源码和man手册。

    2.关于which和whereis的区别:

    which:文件名完全匹配、有后缀名也不行、遍历$PATH、找到一个匹配的文件即退出。

    whereis:文件名完全配配、但可有后缀名、遍历包含$PATH的多个目录、找出所有匹配文件。

    3.关于whereis和locate是否使用同一数据库:

    有说whereis和locate都使用了数据库,由于whereis我们什么都没做就可以查到刚创的文件所以whereis用没用数据库不能确定;但基于下图中whereis可以查到而locate要updatedb后才能查到,可以推断whereis和locate不是使用同一数据库。

    4.关于使用locate和find查找文件的区别:

    locate:模糊查询、找目录和文件。locate查找以某字符串结尾的文件或目录:locate *network"。locate在指定目录下查找:locate "/etc/*network"

    find:完全匹配(可通过“*YourString*”形式模糊查询)、只找文件(可加-type d找目录)。

  • 相关阅读:
    naturalWidth、naturalHeight来获取图片的真实宽高
    网站访问量等数据统计
    电话号码中间四位用****代替
    前端通过url页面传值
    前端存取cookie
    SQL Server 硬件和软件要求
    sql server 2017安装
    Js小知识及一些常见易混淆的知识点
    前端学习资料汇总
    短信验证码
  • 原文地址:https://www.cnblogs.com/lsdb/p/6510566.html
Copyright © 2011-2022 走看看