`rpm -qa` 与 `yum list displayed`:为什么某些软件包只能通过 `rpm -qa` 找到?

`rpm -qa` 与 `yum list displayed`:为什么某些软件包只能通过 `rpm -qa` 找到?

我已经Python 2.7.5在 CentOS 中安装了,想知道为什么我可以使用rpm -qa而不是yum list installed命令找到它?

[root@CentOS7 centos]# python -V
Python 2.7.5
[root@CentOS7 centos]# 

[root@CentOS7 centos]# rpm -qa | grep python-2.7.5
python-2.7.5-58.el7.x86_64
[root@CentOS7 centos]#

[root@CentOS7 centos]# yum list installed | grep python-2.7.5
[root@CentOS7 centos]# 

我的参考:

http://www.linuxnix.com/list-installed-packages-and-their-details-in-redhatcentosfedore/

答案1

当您grep离开时yum list installed,您将不会获得与使用相同的格式rpm -qa

看 :

[root@user1 ~]# yum list installed | grep 2.7.5
python.x86_64                          2.7.5-58.el7                    @base    
python-libs.x86_64                     2.7.5-58.el7                    @base  


[root@user1 ~]# rpm -qa | grep 2.7.5
python-libs-2.7.5-58.el7.x86_64
python-2.7.5-58.el7.x86_64

yum list installed在 3 个不同的列中显示包名称、版本号和从中下载的存储库昵称。

所以对于yum list installed你想要的grep 仅有的包名称或版本号。你不能grep像与 一样将它们放在一起rpm -qa

[root@user1 ~]# yum list installed | grep python.x86_64
audit-libs-python.x86_64               2.7.6-3.el7                     @base    
dbus-python.x86_64                     1.1.1-9.el7                     installed
libselinux-python.x86_64               2.5-11.el7                      @base    
libsemanage-python.x86_64              2.5-8.el7                       @base    
libxml2-python.x86_64                  2.9.1-6.el7_2.3                 installed
newt-python.x86_64                     0.52.15-4.el7                   installed
policycoreutils-python.x86_64          2.5-17.1.el7                    @base    
python.x86_64                          2.7.5-58.el7                    @base    
rpm-python.x86_64                      4.11.3-25.el7                   @base   

相关内容