procure apenas pacotes instalados usando o apt

14

Usando aptitudeeu posso fazer uma pesquisa como:

aptitude search '~i bash'

Este parece ser um regex específico de aptidão. É possível fazer a mesma coisa usando aptou apt-cachesem comandos adicionais?

apt search '~i bash'

não está funcionando.

Exostor
fonte
3
Não, os recursos de pesquisa específicos do aptitude não foram implementados no apt.
Jordanm
Existe alguma outra função em dar o mesmo resultado?
Exostor
4
dpkg -l|grep bash
Ipor Sircer
O dpkg é outro comando
Exostor 31/08/16
A interface do usuário do gerenciamento de pacotes Debian é exemplar.
Rolf

Respostas:

16

Podes tentar:

apt list --installed bash

Isso tentará listar os packages instalados com o nomebash

No entanto, se você deseja procurar um arquivo específico, use apt-file

O comando a seguir listará todos os pacotes que possuem sequência de caracteres bashem seu nome:

apt list -a --installed bash

Conforme sugerido pelo @Exostor, apt list -a --installed bashnem sempre é o caso de listar os pacotes que começam com uma sequência específica; em vez disso, use:

apt list -a --installed bash*

Se você procura por globbing, faça um voto positivo no comentário do @Exostor abaixo.

VanagaS
fonte
2
Ah! mas isso não fará, porque não listará bash-builtins, bash-doc etc. Mas apt list --installed bash*está perto o suficiente para mim.
Exostor 31/08/16
Em vez de englobamento, -apoderia ser usado para listar todos os pacotes correspondentes
Vanagas
2
Não funciona para mim. Ubuntu 16.04-machine: apt list -a --installed bashlista bash / xenial-updates e bash / xenial, mas apt list --installed bash*lista bash, bash-complete e bash-doc, que são os três pacotes bash instalados na máquina.
Exostor 14/09/16
@Exostor, o que -a realmente faz?
ysth 20/08/19
@ysth Lista todas as versões do pacote. Sem -a, apenas lista a versão mais recente.
Exostor 12/09/18
5

dpkg-query --list | grep '^.i\s*PKG'

ou:

dpkg-query --list PKG\* | grep '^.i'

onde PKGé o nome do pacote desejado / a reg-ex.

elegível
fonte
2

Se alguém mais estiver se perguntando como proceder, use o seguinte método.

apt list --installed | grep [XYZ]

Este método também mostra diferentes pacotes que estão instalados, contendo a string que você estava procurando. Por exemplo, se eu estou procurando pelo vlc, são mostrados muitos outros pacotes que também têm 'vlc' em seu nome. Aqui estão as entradas e saídas:

apt list --installed | grep vlc

WARNING: apt.divert does not have a stable CLI interface. Use with caution in scripts.

browser-plugin-vlc/stable,now 2.0.6-4 amd64 [installed]
libvlc-bin/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
libvlc5/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
libvlccore8/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
phonon4qt5-backend-vlc/stable,now 0.9.0-2 amd64 [installed,automatic]
vlc/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-bin/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-data/stable,stable,stable,stable,now 2.2.7-1~deb9u1 all [installed]
vlc-l10n/stable,stable,stable,stable,now 2.2.7-1~deb9u1 all [installed]
vlc-plugin-base/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-notify/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-qt/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-samba/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-skins2/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-video-output/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-video-splitter/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]
vlc-plugin-visualization/stable,stable,now 2.2.7-1~deb9u1 amd64 [installed]

Se você não tiver o pacote instalado, o comando simplesmente será encerrado.

Ev-
fonte
De tudo acima disso, é a única coisa que funcionou para mim no Mint 18.3
JoeManiaci