Linux rpm命令查询软件包(-q、-qa、-i、-p、-l、-f、-R)

使用 rpm 做查询命令的格式如下:

[root@localhost ~]# rpm 选项 查询对象

rpm -q:查询软件包是否安装

用 rpm 查询软件包是否安装的命令格式为:

[root@localhost ~]# rpm -q 包名

-q 表示查询,是 query 的首字母。

例如,查看 Linux 系统中是否安装 apache,rpm 查询命令应写成:

[root@localhost ~]# rpm -q httpd

注意这里使用的是包名,而不是包全名。因为已安装的软件包只需给出包名,系统就可以成功识别(使用包全名反而无法识别)。

rpm -qa:查询系统中所有安装的软件包

使用 rpm 查询 Linux 系统中所有已安装软件包的命令为:

这里还可以使用管道符查找出需要的内容,比如:

[root@localhost ~]# rpm -qa | grep httpd

rpm -qi:查询软件包的详细信息

通过 rpm 命令可以查询软件包的详细信息,命令格式如下:

[root@localhost ~]# rpm -qi 包名

-i 选项表示查询软件信息,是 information 的首字母。


还可以查询未安装软件包的详细信息,命令格式为:

[root@localhost ~]# rpm -qip 包全名

-p 选项表示查询未安装的软件包,是 package 的首字母。
注意,这里用的是包全名,且未安装的软件包需使用“绝对路径+包全名”的方式才能确定包。

rpm -ql:命令查询软件包的文件列表

 使用 rpm 命令可以查询到已安装软件包中包含的所有文件及各自安装路径,命令格式为:

[root@localhost ~]# rpm -ql 包名 

-l 选项表示列出软件包所有文件的安装目录。
rpm 命令还可以查询未安装软件包中包含的所有文件以及打算安装的路径,命令格式如下:

[root@localhost ~]# rpm -qlp 包全名

rpm -qf:命令查询系统文件属于哪个RPM包

rpm -ql 命令是通过软件包查询所含文件的安装路径,rpm 还支持反向查询,即查询某系统文件所属哪个 RPM 软件包。其命令格式如下:

[root@localhost ~]# rpm -qf 系统文件名

 -f 选项的含义是查询系统文件所属哪个软件包,是 file 的首字母。
注意,只有使用 RPM 包安装的文件才能使用该命令,手动方式建立的文件无法使用此命令。

rpm -qR:查询软件包的依赖关系

rpm -qR 命令用来查询某已安装软件包依赖的其他包,该命令的格式为:

[root@localhost ~]# rpm -qR 包名

-R(大写)选项的含义是查询软件包的依赖性,是 requires 的首字母。