Linux系统命令whereis详解-用于查找某个命令的执行文件、源代码文件和手册页的位置

本文主要是介绍Linux系统命令whereis详解-用于查找某个命令的执行文件、源代码文件和手册页的位置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

目录

一、whereis命令介绍

二、命令语法

三、常用选项

1、常用选项

2、命令的帮助消息

四、示例

1、查找所有与 `ls` 相关的文件:

2、只查找 `ls` 的二进制文件:

3、只查找 `ls` 的手册页文件:

4、注意事项

五、命令输出

1、输出位置信息

2、输出示例

六、与其他命令的比较


一、whereis命令介绍

        `whereis` 是 Linux 系统中一个用于查找二进制文件、源代码文件和手册页文件的命令。它基于预先构建的数据库进行搜索,因此速度相对较快,但可能无法找到最近安装或更新的文件。

二、命令语法

         基本语法如下:

        whereis [选项] [文件名]

三、常用选项

1、常用选项

        `-b`:只查找二进制文件。

        `-m`:只查找手册页文件。

        `-s`:只查找源代码文件。

2、命令的帮助消息

        如果没有提供选项和文件名,`whereis` 会输出一个简要的帮助消息。如下图:

四、示例

1、查找所有与 `ls` 相关的文件:

        whereis ls

        此命令会返回 `ls` 的二进制文件、源代码文件(如果存在)和手册页文件的路径。

2、只查找 `ls` 的二进制文件:

        whereis -b ls

3、只查找 `ls` 的手册页文件:

        whereis -m ls

4、注意事项

        `whereis` 命令基于 `updatedb` 命令创建的数据库进行搜索。如果你新安装或更新了某个软件,但 `whereis` 无法找到它,可能需要运行 `sudo updatedb` 来更新数据库。

        `whereis` 并不搜索当前目录或用户的 `$PATH` 环境变量中的目录。如果你知道文件大致在哪个目录下,但不确定确切的路径,使用 `find` 或 `locate` 命令可能更为合适。

五、命令输出

1、输出位置信息

        `whereis` 命令搜索以下三个标准位置:

        (1). 二进制文件(通常位于 `/usr/bin`、`/usr/sbin`、`/bin` 或 `/sbin`)。

        (2). 源代码文件(通常位于 `/usr/src` 或 `/usr/local/src`)。

        (3). 手册页(通常位于 `/usr/share/man`)。

2、输出示例

        例如,如果你想查找 `ls` 命令的二进制文件、源代码文件和手册页的位置,你可以这样做:

        whereis ls

        输出可能类似于:

        ls: /bin/ls /usr/share/man/man1/ls.1.gz

        可以看看实际操作的效果:

        这表明 `ls` 命令的二进制文件位于 `/bin/ls`,其手册页可以在 `/usr/share/man/man1/ls.1.gz` 找到。注意,不一定总是能找到源代码文件,因为不是所有的命令都发布源代码。

        `whereis` 命令没有提供通用的选项来指定自定义的路径。如果你需要这样做,你可以使用 `find` 命令或其他查找工具。

        需要注意的是,`whereis` 命令的行为和可用的路径可能会根据你的 Linux 发行版和配置而有所不同。

六、与其他命令的比较

        `which`:这个命令用于在用户的 `$PATH` 环境变量中查找可执行文件的路径。它只返回第一个匹配的文件路径。

        `locate`:这个命令基于一个预先构建的数据库进行搜索,类似于 `whereis`,但 `locate` 的数据库通常更全面,并且可以通过 `updatedb` 命令定期更新。

        `find`:这是一个强大的命令,用于在文件系统中实时搜索文件。它可以根据各种条件(如文件名、大小、修改时间等)进行搜索,但通常比 `whereis`、`which` 和 `locate` 慢。


若想了解更多,文章正下方可以看到我的联系方式:鼠标点击” 下面的 “威迪斯特-就是video system 微信名片字样,就会出现我的二维码,欢迎沟通探讨。


这篇关于Linux系统命令whereis详解-用于查找某个命令的执行文件、源代码文件和手册页的位置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/860463

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

MyBatis常用XML语法详解

《MyBatis常用XML语法详解》文章介绍了MyBatis常用XML语法,包括结果映射、查询语句、插入语句、更新语句、删除语句、动态SQL标签以及ehcache.xml文件的使用,感兴趣的朋友跟随小... 目录1、定义结果映射2、查询语句3、插入语句4、更新语句5、删除语句6、动态 SQL 标签7、ehc

详解SpringBoot+Ehcache使用示例

《详解SpringBoot+Ehcache使用示例》本文介绍了SpringBoot中配置Ehcache、自定义get/set方式,并实际使用缓存的过程,文中通过示例代码介绍的非常详细,对大家的学习或者... 目录摘要概念内存与磁盘持久化存储:配置灵活性:编码示例引入依赖:配置ehcache.XML文件:配置

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

k8s按需创建PV和使用PVC详解

《k8s按需创建PV和使用PVC详解》Kubernetes中,PV和PVC用于管理持久存储,StorageClass实现动态PV分配,PVC声明存储需求并绑定PV,通过kubectl验证状态,注意回收... 目录1.按需创建 PV(使用 StorageClass)创建 StorageClass2.创建 PV

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D