linux - 如何使用 YUM 列出包的内容?

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

最佳答案

有一个名为 yum-utils 的包,它建立在 YUM 之上,并包含一个名为 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 系统上,使用 rpm v4.8.0、yum v3.2.29 和 repoquery v0.0.11,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

https://stackoverflow.com/questions/104055/

相关文章:

python - 在 Python 中的同一行上打印多个

windows - 如何将 DOS/Windows 换行符 (CRLF) 转换为 Unix 换行符

linux - "#!/usr/bin/env bash"和 "#!/usr/bin/bash"有什

python - Python中的抽象方法

python - Flask 可以有可选的 URL 参数吗?

linux - 不会分配伪终端,因为 stdin 不是终端

linux - 使用 openssl 从服务器获取证书

linux - 使用 sed 删除空行

python - 配置以便 pip install 可以从 github 工作

python - 从字符串创建 Pandas DataFrame