
Existe uma maneira de pesquisar nomes de arquivos (não conteúdos de arquivos) para pacotes em um repositório Fedora? Isso seria semelhante a rpm -ql [package] | grep term
todos os pacotes do repositório, exceto que seria melhor poder emitir o comando sem o pacote instalado, porque desejo pesquisar em vários milhares de listas de arquivos de pacotes. A pergunta que estou tentando responder é:
Quais pacotes no repositório X enviam o arquivo Y?
O nome deve ser suficiente porque não preciso de um hash exato.
Responder1
Com dnf
:
dnf repoquery --disablerepo=* --enablerepo=X -f Y
Com yum
:
yum -y install yum-utils
repoquery --disablerepo=* --enablerepo=X -f Y
Curingas são suportados para Y
.
Exemplos:
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*
Você também pode simplesmente yum provides Y
(ou dnf provides Y
), mas isso incluirá pacotes instalados, apesar --disablerepo
da mudança, em alguns sistemas.
Dica bônus
Você pode instalar diretamente o pacote que requer um nome de arquivo específico, simplesmente passando-o para yum
ou dnf
. Sim, isso funciona e é bastante fácil:
yum install /usr/bin/zip