Como posso saber de qual pacote um executável veio?

18

Estou respondendo uma pergunta com uma sugestão para usar rename , e percebo que não sei de qual pacote vem (como parte da resposta, imagino dizer algo como "se você não tiver rename , é instalado como parte do [pacote] ").

man rename diz para SEE ALSO: mv(1), perl(1) - então, meu primeiro pensamento é que ele foi instalado com perl.

Uma resposta relacionada, como saber o que foi instalado como parte de um pacote , ajuda-me a descobrir que o perl O pacote inclui prename , mas não rename - e meu /usr/bin/rename aponta para /etc/alternatives/rename , que aponta para /usr/bin/prename

Então, isso ainda é meio confuso. O /etc/alternatives/rename apontou para outro lugar antes de instalar o perl? Existe uma maneira geral de saber de qual pacote vem algo?

    
por Ternary 18.02.2013 / 21:15

4 respostas

24

instale o apt-file

$ sudo apt-get install apt-file

atualize o apt-file

$ sudo apt-file update

pesquise o pacote ao qual um arquivo pertence

$ apt-file search filename

encontre o caminho do executável

$ whereis rename
rename: /usr/bin/rename.ul /usr/bin/rename /usr/bin/X11/rename.ul /usr/bin/X11/rename     /usr/share/man/man1/rename.1.gz /usr/share/man/man2/rename.2.gz

pacote de pesquisa

$ apt-file search /usr/bin/rename
ladr4-apps: /usr/bin/renamer
util-linux: /usr/bin/rename.ul

o nome do pacote é: util-linux

    
por phipsalabim 18.02.2013 / 21:27
6

Acontece que dpkg-query é bom para obter informações sobre pacotes instalados, e com a opção -S [pattern] irá procurar pacotes com arquivos correspondentes a [padrão].

dpkg-query -S [filename-search-pattern]
    
por Ternary 21.02.2013 / 21:59
2

Você pode tentar apt-file (não faz parte da instalação padrão).

0) Atualize o banco de dados apt-file

sudo apt-file update

1) Encontre binário

$ which rename
/usr/bin/rename

2) Encontre o pacote

$ apt-file search /usr/bin/rename
util-linux: /usr/bin/rename.ul

E voila - renomear faz parte do util-linux

    
por Vojtech Trefny 18.02.2013 / 21:26
2

A partir de 2018

apt search filename

funciona para distribuições recentes do Ubuntu e da maioria das Debian.

Atualização de maio de 2018: aparentemente não funciona mais com o Ubuntu 18.04.

    
por Attila Fulop 30.01.2018 / 14:51

Tags