Como recuperar uma lista de pacotes instalados no (K) ubuntu classificados por categoria

2

Estou usando o Kubuntu. Eu gostaria de obter uma lista de pacotes instalados no meu sistema e, em particular, para classificá-los por categoria, ou seja, como visto no Gerenciador de Pacotes Muon, na guia de filtro de categoria. Para uma referência visual, é a parte esquerda da janela na imagem a seguir.

De dentro do Muon existe uma opção para exportar uma lista de pacotes instalados no menu Arquivo, mas ele apenas exporta uma lista simples (acho que ele executa o comando dpkg --get-selections ) e não é isso que eu estou procurando .

Eu tentei procurar nas man pages de dpkg , dpkg-query , apt e apt-get , mas não consegui encontrar nenhuma informação útil.

A única pista que tenho é que o manual de dpkg-query declara que é possível classificar a saída usando algumas opções de comando, mas não encontrei como classificar por categoria.

Alguma pista?

    
por Sekhemty 20.04.2013 / 13:01

1 resposta

4

Você pode fazer isso usando dpkg-query e algumas outras ferramentas:

dpkg-query -Wf='${package}\t${Section}\t${status}\n' | grep installed | 
  gawk '{print $2"\t"$1}' | sort 

EXPLICAÇÃO:

  • dpkg-query -Wf='${package}\t${section}\t${status}\n' : Este comando listará todos os pacotes ( -W ), como package name < TAB > package section < TAB > package status . Na página dpkg-query man:

    -f, --showformat=format
          This  option  is  used  to specify the format of the output --show 
          will produce. The format is a string that will be output for each package 
          listed.
    

    Portanto, apenas este comando produz uma saída assim:

    $ dpkg-query -Wf='${package}\t${Section}\t${status}\n' | head
    a2ps    text    install ok installed
    abiword editors install ok installed
    abiword-common  editors install ok installed
    abiword-plugin-grammar  editors install ok installed
    abiword-plugin-mathview editors install ok installed
    accountsservice admin   install ok installed
    acl utils   install ok installed
    acpi    utils   install ok installed
    acpi-support-base   admin   install ok installed
    acpid   admin   install ok installed
    
  • grep installed : seleciona apenas as linhas que descrevem pacotes cujo status é installed .

  • gawk '{print $2"\t"$1}' : Use o gawk para imprimir apenas os dois campos nos quais estamos interessados (nome e seção do pacote), para tornar a saída mais fácil de ler e classificar, imprima a Seção primeiro e o nome do pacote em segundo. / p>

  • sort : Como a seção agora é o primeiro campo, basta sort para classificar os pacotes por seção.

O resultado final é assim:

admin   accountsservice
admin   aptdaemon-data
editors libreoffice-impress
fonts   fonts-telu
games   enemylines3
games   enemylines7
gnome   cinnamon
libdevel    libxmu-dev
libs    libapt-pkg4.12
oldlibs hpijs
python  python-gi-cairo
    
por 20.04.2013 / 14:31