Encontrando pacotes instalados e a versão [duplicada]

1

Sou muito novo no Ubuntu e estou tentando encontrar um comando que diga quais pacotes e as versões estão instaladas na minha "caixa de areia". Estou procurando empacotar isso como um arquivo de saída

    
por Kenny 21.07.2016 / 02:50

3 respostas

1

Sua pergunta pode ser marcada como duplicada porque você deve fazer algumas de suas próprias pesquisas antes de postar nos sites do StackExchange. Mas, como a possível duplicata ( Como listar todos os pacotes instalados ) não toca nas informações da versão, aqui está sua resposta:

dpkg -l | grep "^ii" | awk '{print ,}'

ou

dpkg -l | awk '/^ii/ {print ,}'

Decodificado:

dpkg -l lista todos os pacotes, incluindo aqueles que foram removidos.

grep "^ii" imprime apenas linhas que começam com "ii" (para excluir pacotes que foram removidos, geralmente marcados com "rc"). Observe que os pacotes instalados podem não estar sempre no status "ii". Este comando irá verificar: dpkg -l | grep -v "^ii" | grep -v "^rc" | tail -n +6

awk '{print ,}' imprime as segunda e terceira colunas (nome do pacote e versão, respectivamente).

p.s. Eu escrevi alguns comentários sobre isso antes, mas meu código estava errado.

    
por wjandrea 21.07.2016 / 03:53
1

Eu sei que você pode usar dpkg --get-selections | awk '{print }' para ver todos os pacotes instalados. mas não tenho certeza sobre as versões que eu vou deixar você saber se eu encontrar algo mais

    
por Cyber_Star 21.07.2016 / 02:55
1

Embora a seleção de campos da saída de dpkg -l certamente funcione, o comando mais básico dpkg-query permite que os campos de saída e o formato sejam personalizados sem recorrer a ferramentas adicionais de processamento de texto. Quando isso acontece, simples

dpkg-query -W

sem string de formato explícito fornece exatamente uma lista separada por tabulações de nomes e versões de pacotes (equivalente a dpkg -l | awk '{print ,}' ), conforme observado em man dpkg-query :

-W, --show [package-name-pattern...]
       Just like the --list option this will list all packages matching
       the  given  pattern.  However the output can be customized using
       the --showformat option.  The default output  format  gives  one
       line  per  matching package, each line having the name (extended
       with the architecture qualifier for  Multi-Arch  same  packages)
       and installed version of the package, separated by a tab.


Se você quer uma saída mais bonita, mais parecida com a de dpkg -l , você poderia usar algo como

dpkg-query -W -f='${binary:Package;-25}\t${Version}\n'

para justificar à esquerda os nomes dos pacotes em um campo de largura de 25 colunas ou

dpkg-query -W -f='${db:status-abbrev}\t${binary:Package;-25}\t${Version}\n'

para incluir os sinalizadores de status ii etc. no início de cada linha.

    
por steeldriver 21.07.2016 / 04:53