Pesquisa em cache do Apt apenas fonte especificada

2

Eu uso backtrack e tenho um arquivo Packages.gz com alguns pacotes no meu disco rígido. Eu quero usar o "apt-cache search" para procurar apenas a pasta que contém Packages.gz. Isso é possível?

    
por ngwdaniel 26.03.2013 / 16:46

2 respostas

2

Você está procurando grep-dctrl , que faz parte do dctrl-tools package.

Por exemplo:

$ grep-dctrl -ns Package -F Filename mplayer2_2.0~git20120817-dmo1_amd64.deb www.deb-multimedia.org_dists_wheezy_main_binary-amd64_Packages 
mplayer2

-n significa imprimir apenas o valor dos campos, não o rótulo. -s Package significa imprimir apenas o campo Pacote. -F Filename significa procurar apenas o campo do nome do arquivo. mplayer2…deb é o que procurar. www…_Packages é o arquivo a ser pesquisado.

Não tenho certeza se ele pesquisará um arquivo .gz diretamente, mas ele pesquisará stdin, para que você possa usar apenas um canal: zcat Packages.gz | grep-dctrl …

edit: Dado que você tem o% real.deb, não apenas o nome do arquivo, você também pode usar dpkg-deb para obter as informações. Aqui está um exemplo com wireshark:

$ dpkg-deb --showformat='${package}\n' -W a.deb
wireshark

e, para explicar --showformat , permite formatar a saída (aqui, obtendo apenas o nome do pacote, em vez de pacote e versão, que é o padrão); -W diz para imprimir informações formatadas sobre um pacote binário. a.deb é, claro, o pacote .deb para imprimir informações sobre (eu o renomeio para mostrar que ele não está apenas cuspindo o nome do arquivo).

    
por 26.03.2013 / 17:10
1

Por que usar o apt-cache? O zgrep fará a pesquisa em um único arquivo ...

    
por 26.03.2013 / 16:52

Tags