如何在 Fedora 上的给定存储库中搜索所有包的所有文件名?

如何在 Fedora 上的给定存储库中搜索所有包的所有文件名?

有没有办法在 Fedora 存储库中搜索包的文件名(而不是文件内容)?这与存储库中的每个包类似rpm -ql [package] | grep term,但最好能够在没有安装包的情况下发出命令,因为我想搜索数千个包文件列表。我想回答的问题是:

存储库 X 中的哪些包传送文件 Y?

这个名称应该足够了,因为我不需要精确的哈希值。

答案1

dnf

dnf repoquery --disablerepo=* --enablerepo=X -f Y

yum

yum -y install yum-utils
repoquery --disablerepo=* --enablerepo=X -f Y

支持通配符Y

例子:

dnf repoquery --disablerepo=* --enablerepo=rhel-8-for-x86_64-baseos-rpms -f /usr/bin/zip
dnf repoquery --disablerepo=* --enablerepo=rhel-8-for-x86_64-baseos-rpms -f /usr/bin/zi*

您也可以简单地yum provides Y(或dnf provides Y),但这将包括--disablerepo在某些系统上安装的软件包,尽管有切换。

额外小费

您可以直接安装需要特定文件名的包,只需将其传递给yumdnf。是的,这有效并且非常简单:

yum install /usr/bin/zip

相关内容