软件包查询

〇、测试环境
[root@osker ~]# cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
[root@osker ~]# uname -r
5.4.2-1.el7.elrepo.x86_64

[root@osker ~]# rpm --version
RPM version 4.11.3

一、包查询
有时候知道命令需要查找命令对应的安装包名(有时候命令名称和包名不是同一个名字)
方法1、
先使用whereis命令,查询出命令的路径
[root@osker ~]# whereis ls
ls: /usr/bin/ls /usr/share/man/man1/ls.1.gz
再使用rpm -qf查询系统文件属于哪个软件包(file)
[root@osker ~]# rpm -qf  /usr/bin/ls
coreutils-8.22-24.el7.x86_64
方法2、
[root@osker ~]# yum provides ls
Loaded plugins: fastestmirror
...
 * updates: mirror.newmediaexpress.com
coreutils-8.22-24.el7.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : base
Matched from:
Filename    : /usr/bin/ls

二、rpm -q 常用查询命令
rpm:RPM Package Manager
rpm {-q|--query} [select-options] [query-options]

1、-q:查询(query)
查询软件包是否安装,命令格式如下:
rpm -q 软件包名
例:
[root@osker ~]# rpm -q net-tools
net-tools-2.0-0.25.20131004git.el7.x86_64
[root@osker ~]# rpm -q ifconfig
package ifconfig is not installed
注意是接包名不是命令名

2、-qa:查询所有安装的包(all)
-a, --all:Query all installed packages.
rpm -qa
例:
[root@osker ~]# rpm -qa
libXdamage-1.1.4-4.1.el7.x86_64
dbus-python-1.1.1-9.el7.x86_64
setup-2.8.71-10.el7.noarch
libXpm-3.5.12-1.el7.x86_64
...
[root@osker ~]# rpm -qa |grep net-tools
net-tools-2.0-0.25.20131004git.el7.x86_64

3、-qi查询软件包的详细信息(information)
-i, --info:Display package information, including name, version, and description.
rpm -qi 包名
例:
[root@osker ~]# rpm -qi net-tools
Name        : net-tools
#包名
Version     : 2.0
#版本
Release     : 0.25.20131004git.el7
Architecture: x86_64
#架构
Install Date: Fri 22 Nov 2019 04:28:51 AM CST
#安装时间
Group       : System Environment/Base
Size        : 938978
License     : GPLv2+
Signature   : RSA/SHA256, Fri 23 Aug 2019 05:36:04 AM CST, Key ID 24c6a8a7f4a80eb5
#签名
Source RPM  : net-tools-2.0-0.25.20131004git.el7.src.rpm
#源RPM包名
Build Date  : Fri 09 Aug 2019 09:10:26 AM CST
Build Host  : x86-02.bsys.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Vendor      : CentOS
URL         : http://sourceforge.net/projects/net-tools/
Summary     : Basic networking tools
Description :
The net-tools package contains basic networking tools,
including ifconfig, netstat, route, and others.
Most of them are obsolete. For replacement check iproute package.

4、-ql(list)查询已经安装的软件包中的文件列表和安装的完整目录
rpm -ql 包名
-l, --list:List files in package.
例:
[root@osker ~]# rpm -ql vim-enhanced
/etc/profile.d/vim.csh
/etc/profile.d/vim.sh
/usr/bin/rvim
/usr/bin/vim
/usr/bin/vimdiff
/usr/bin/vimtutor

5、-qc查询已经安装的软件包中的配置文件所在的位置
-c, --configfiles:List only configuration files.
rpm -qc 包名
例:
[root@osker ~]# rpm -qc mlocate
/etc/cron.daily/mlocate
/etc/updatedb.conf

6、-qd查询已经安装的软件包中的帮助文档
-d, --docfiles:List only documentation files.
rpm -qd 包名
例:
[root@osker ~]# rpm -qd  mlocate
/usr/share/doc/mlocate-0.26/AUTHORS
/usr/share/doc/mlocate-0.26/COPYING
/usr/share/doc/mlocate-0.26/NEWS
/usr/share/doc/mlocate-0.26/README
/usr/share/man/man1/locate.1.gz
/usr/share/man/man5/mlocate.db.5.gz
/usr/share/man/man5/updatedb.conf.5.gz
/usr/share/man/man8/updatedb.8.gz

7、-qf(file)查询指定文件由哪个软件包生成
-f, --file FILE:Query package owning FILE.
例:
[root@osker ~]# whereis ifconfig
ifconfig: /usr/sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz
[root@osker ~]# rpm -qf  /usr/share/man/man8/ifconfig.8.gz
net-tools-2.0-0.25.20131004git.el7.x86_64

8、搜索
[root@osker ~]# yum provides locate
#查找locate命令所属包名
Loaded plugins: fastestmirror
Determining fastest mirrors
...     
mlocate-0.26-8.el7.x86_64 : An utility for finding files by name
Repo        : base
Matched from:
Filename    : /usr/bin/locate
#安装mlocate
[root@osker ~]# yum install -y mlocate
Loaded plugins: fastestmirror
...
Installed:
  mlocate.x86_64 0:0.26-8.el7
Complete!
[root@osker ~]# touch qiu
[root@osker ~]# mkdir qiu1
#创建测试文件和目录
[root@osker ~]# ll
total 4
-rw-r--r-- 1 root root  0 Jan  2 09:41 osker
-rw-r--r-- 1 root root  0 Jan  2 09:52 qiu
drwxr-xr-x 2 root root  6 Jan  2 09:52 qiu1
-rw-r--r-- 1 root root 17 Dec 31 16:43 sort.txt
[root@osker ~]# updatedb
#更新搜索数据库
[root@osker ~]# locate qiu
/root/qiu
/root/qiu1

rpm帮助
[root@osker ~]# man rpm

软件包查询-rpm查询常用命令的更多相关文章

  1. rabbitmq 部署(二进制和rpm)与常用命令

    目录 一 rabbitmq 简介 二 erlang 安装 三 rabbitmq rpm安装 (二进制安装和rpm安装二选一) 四 rabbitmq 二进制安装(rpm 安装和二进制安装二选一) 五 初 ...

  2. (十五)、linux软件的安装与查询-rpm与yum命令

    一.RPM软件管理程序:rpm 1.RPM安装软件(install) rpm命令的选项超级多,安装话直接使用-ivh即可,其余做了解即可 命令格式:rpm  -ivh  package_name.rp ...

  3. ubuntu下查询网络的常用命令

    1.查看无线路由器(网关)的IP地址 在terminal中输入如下命令,即可查询到当前使用的路由器的IP地址(我电脑是连着一个无线网络还有一个DSL连接): route|grep -i default ...

  4. Linux常用命令使用

    系统基础相关 使用root用户的环境变量切换到root用户 su - 显示当前工作路径 pwd 显示当前系统默认语言及键盘布局 localectl 显示系统中能支持的所有语言 localectl li ...

  5. Centos 6/7 常用命令总结 (基础)

    Centos 6/7 常用命令总结 (基础): 参考链接:https://www.cnblogs.com/linhaifeng/p/6045600.html 目录介绍: a) bin目录:用来存放常用 ...

  6. rpm包管理 命令

    rpm -ivh package.rpmrpm -ivh --force  package_name.rpm # ...conflict with...rpm -ivh --nodeps packag ...

  7. php开发面试题---Linux常用命令大全

    php开发面试题---Linux常用命令大全 一.总结 一句话总结: ls 查看目录中的文件 cd .. 返回上一级目录 cat 查看文件内容 touch 新建文件或修改时间 1.linux 系统信息 ...

  8. 软件包管理:rpm命令管理-查询

    yum没有rpm查询的多. 使用包名时无所谓使用位置.因为查询是在后台数据库中查询的. 记忆是只需知道安装和升级时要加包全名,其余加包名.其实未安装的加包全名. rpm包可以手工指定安装路径,但不建议 ...

  9. RPM软件包管理的查询功能 转

    RPM软件包管理的查询功能: 命令格式 rpm {-q|--query} [select-options] [query-options] RPM的查询功能是极为强大,是极为重要的功能之一:举几个常用 ...

随机推荐

  1. 开发者必知的8款App快速开发工具开发者必知的8款App快速开发工具

    "我有一个好创意,就差一个CTO……" "原生APP开发难度大,周期长,成本高,还没上线市场已经被占领了." "APP版本迭代更新,都是企业的一道难关 ...

  2. jmeter日期处理beanshell(2)

    import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.text.P ...

  3. vue-router2.0的用法

    随着vue越来越火,而vue-router却是一个项目不可或缺的,所以在这里结合实例总结一下router的用法,也是给自己的一个总结. 1.首先第一步当然是安装vue-router依赖,当然也可直接s ...

  4. 第三期 行为规划——10.用C++实现变道函数

    在之前的测验中,我们设计了一个成本函数,高速公路上到达一个目标选择一条车道. 公式中,Δd是车道间的纵向距离,Δs是车辆到目标之间的距离. 在这个测验中,需要用c++实现代价函数,但是这里有一个变换, ...

  5. @NOI模拟2017.06.30 - T1@ Left

    目录 @description@ @solution@ @accepted code@ @details@ @description@ JOHNKRAM 最近在研究排序网络,但他发现他不会制作比较器, ...

  6. oracle使用TKPROF 工具来查询SQL性能状态

    SQL trace 工具收集正在执行的SQL的性能状态数据并记录到一个跟踪文件中. 这个跟踪文件提供了许多有用的信息,例如解析次数.执行次数,CPU使用时间等.这些数据将可以用来优化你的系统. 设置S ...

  7. 免费淘宝IP地址库简介及PHP/C#调用实例

    https://yq.aliyun.com/ziliao/25800?spm=a2c4e.11155472.0.0.68027abfcpFb7O 摘要: 本文讲的是免费淘宝IP地址库简介及PHP/C# ...

  8. jieba分词流程及部分源码解读(一)

    首先我们来看一下jieba分词的流程图: 结巴中文分词简介 1)支持三种分词模式: 精确模式:将句子最精确的分开,适合文本分析 全模式:句子中所有可以成词的词语都扫描出来,速度快,不能解决歧义 搜索引 ...

  9. ES6语法~解构赋值、箭头函数、class类继承及属性方法、map、set、symbol、rest、new.target、 Object.entries...

    2015年6月17日 ECMAScript 6发布正式版本 前面介绍基本语法,  后面为class用法及属性方法.set.symbol.rest等语法. 一.基本语法:  1.         定义变 ...

  10. rsa加密(非对称加密)

    rsa加密 是非对称加密 需要公钥 与 私钥 这个公钥私钥的具体值需要与后端协商定下 rsa js代码如下 代码太多不插入了 html代码如下 <!DOCTYPE html> <ht ...