如何在Linux中查询已安装软件包 Linux rpm -qa命令使用详解

rpm -qa命令用于查询linux系统中所有已安装的RPM软件包,结合grep可模糊查找特定包,如rpm -qa | grep httpd;使用rpm -qi可查看包详细信息,sed可提取纯包名,是运维常用技能。

如何在Linux中查询已安装软件包 Linux rpm -qa命令使用详解

linux系统中,查询已安装的软件包是系统管理和维护中的常见操作。对于基于RPM(red Hat Package Manager)的发行版,如centos、RHEL、Fedora等,rpm -qa 是最基础且高效的命令之一。它能列出系统中所有已安装的RPM软件包。

rpm -qa 命令基本用法

rpm -qa 中的选项含义如下:

  • -q:表示“query”(查询)
  • -a:表示“all”(所有)

组合起来就是“查询所有已安装的软件包”。

执行命令:

rpm -qa

系统会输出类似以下内容:

bash-4.2.46-34.el7 httpd-2.4.6-93.el7 openssl-1.0.2k-19.el7 …

结合 grep 进行模糊查找

系统安装的软件包较多时,直接运行 rpm -qa 会输出大量信息。可以通过管道配合 grep 命令来筛选特定软件包。

例如,查找所有与“httpd”相关的已安装包:

rpm -qa | grep httpd

输出可能为:

httpd-tools-2.4.6-93.el7 httpd-2.4.6-93.el7

同样,可以查找“python”相关的包:

rpm -qa | grep python

查询特定软件包是否安装

如果你想确认某个具体软件包是否已安装,可以直接结合 grep 查询:

rpm -qa | grep ^nginx

这里使用 ^nginx 表示以“nginx”开头的包名,提高精确度。

如果无输出,说明该软件包未安装。

查看软件包的详细信息

rpm -qa 列出的是包名,若需查看某个包的详细信息(如版本、安装时间、描述等),可使用:

rpm -qi 软件包名

例如:

rpm -qi httpd

输出包括:名称、版本、发布版本、安装时间、大小、许可证、描述等信息。

只列出包名(不带版本号)

默认 rpm -qa 显示完整包名(含版本和架构)。如果只想提取包名部分,可以结合脚本处理:

rpm -qa | sed ‘s/-[^-]*-[^-]*$//’

该命令使用 sed 删除版本和发布号部分,仅保留软件名。注意:部分包名可能包含连字符,需谨慎使用。

基本上就这些。掌握 rpm -qa 及其组合用法,能快速定位系统中已安装的软件,是日常运维和故障排查的重要技能。不复杂但容易忽略细节,比如区分大小写和精确匹配。建议结合具体场景灵活使用管道和文本处理命令。基本上就这些。

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享