一尘不染

如何使用YUM列出包装内容?

linux

我知道如何使用rpm列出软件包的内容(rpm -qpil package.rpm)。但是,这需要知道.rpm文件在文件系统上的位置。一个更优雅的解决方案是使用包管理器,在我的例子中是YUM。YUM如何用于实现这一目标?


阅读 302

收藏
2020-06-03

共1个答案

一尘不染

有一个名为yum-utilsYUM 的软件包,它包含一个repoquery可以完成此任务的工具。

$ repoquery --help | grep -E "list\ files" 
  -l, --list            list files in this package/group

合并为一个示例:

$ repoquery -l time
/usr/bin/time
/usr/share/doc/time-1.7
/usr/share/doc/time-1.7/COPYING
/usr/share/doc/time-1.7/NEWS
/usr/share/doc/time-1.7/README
/usr/share/info/time.info.gz

在至少一个RH v4.8.0,yum v3.2.29和repoquery v0.0.11的RH系统上,repoquery -l rpm什么都不打印。

如果遇到此问题,请尝试添加--installed标志:repoquery --installed -l rpm


DNF 更新:

要使用dnf代替yum-utils,请使用以下命令:

$ dnf repoquery -l time
/usr/bin/time
/usr/share/doc/time-1.7
/usr/share/doc/time-1.7/COPYING
/usr/share/doc/time-1.7/NEWS
/usr/share/doc/time-1.7/README
/usr/share/info/time.info.gz
2020-06-03