Linux查看某个命令属于哪个包

本文介绍了一种实用方法,即如何根据具体命令找到提供该命令的软件包。这对于那些难以直接通过命令名称找到对应包的情况尤其有用。文章分别介绍了在rpm/yum和deb/apt-file环境下查找指定命令所属软件包的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有时修我们需要某个命令但其没有安装,提供该命令的包名也与命令名相差很大直接查找命令名找不到包,如rexec。

此时我们就非常需要这样一个工具:可以根据最终的命令查找提供该命令的软件包。

 

类型命令说明
rpmyum provides "*/rexec"查找会释放rexec文件的软件包
debapt-file search rexecapt-file默认没安装,好像效果也一般

转载于:https://www.cnblogs.com/lsdb/p/6604521.html

### 查找命令所属的软件Linux系统中,如果要查找某个特定命令属于哪个软件,可以通过多种方法实现。以下是几种常见的解决方案: #### 方法一:使用 `dpkg` 和 `which` 命令(适用于基于 Debian 的系统) 对于 Ubuntu 或其他基于 Debian 的发行版,可以结合 `which` 和 `dpkg` 来定位命令对应的软件名称。 首先,找到该命令的实际路径: ```bash which command_name ``` 接着,利用 `dpkg` 查询此文件归属于哪个软件: ```bash dpkg -S $(which command_name) ``` 上述操作会返回具体的软件名称及其相关信息[^1]。 #### 方法二:使用 `yum whatprovides` (适用于基于 Red Hat 的系统) 针对 CentOS、RHEL 等基于 Red Hat 的系统,可采用 `yum whatprovides` 命令来寻找某条指令隶属于哪一个软件之中。例如: ```bash yum whatprovides */command_name ``` 这条语句能够扫描所有可用仓库中的数据并匹配到确切的结果[^2]。 #### 方法三:借助 RPM 数据库查询已安装环境下的情况 当目标仅限于已经存在于本地机器上的那些资源时,则可以直接调用如下方式快速确认是否存在对应关系: ```bash rpm -qf $(which command_name) ``` 这里的 `-qf` 参数表示按照给定文件反向追溯其归属者;需要注意的是,这种方法的前提条件是该命令确实由某种形式的标准 RPM 打而成,并且已经被正常部署到了当前环境中[^4]。 以上便是三种主要途径用于解决如何判断某一特殊功能或者工具到底源自哪一款独立单元的问题描述,请依据实际应用场景选取最合适的方案执行即可达成目的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值