grep-dctrl
e seus derivados fornecem uma ótima maneira de consultar os arquivos de cache do apt. (Você pode instalar essas ferramentas no ubuntu com o sudo apt-get install dctrl-tools)
No caso de pacotes disponíveis (mas não necessariamente instalados), você pode usar grep-available
. Por exemplo, para listar todos os pacotes disponíveis:
grep-available -s Package .
Editar:
aptitude
pode mostrar uma lista de pacotes não instalados, iniciando-a.
Você também pode obter uma lista de pacotes não instalados aptitude
usando:
aptitude -F "%p" search "?not(?installed)"
Observe que, com os novos pacotes com vários arcos, você obterá pacotes para outras arquiteturas listadas neste resultado. Por exemplo, eu recebo:
aptitude -F "%p" search "?not(?installed)" | grep "^bash:"
bash:i386
Eu tenho o bash
pacote instalado, mas é a versão amd64, pois meu sistema operacional está instalado com a versão amd64 do Ubuntu Precise. Se você não quiser ver esses pacotes para outras arquiteturas, poderá excluir linhas que contenham :
:
aptitude -F "%p" search "?not(?installed)" | grep -v ':'
apt-cache
é usado para consultar o cache do pacote:fonte
code
"dpkg --get-selections | grep '[[: space:]] install $' | awk '{print $ 1}' > installed.txt "e encontrou duplicatas. Os outros dois comandos que você forneceu não funcionarão porque não estou procurando um pacote específico, mas qualquer pacote que não esteja instalado no momento.Use
apt-cache
para esta finalidade:Como
apt-cache
apenas usa o cache do pacote no sistema, verifique se esse cache está atualizado:Você também pode usar o utilitário
apt-file
se souber o nome do arquivo que deseja procurar; isso deve ser adicionado ao sistema no entanto. Por exemplo:Costumo usar
apt-cache
de uma das seguintes maneiras:(Isso mostra as coisas que possuem itens realmente em seus resumos ou nomes.)
(Isso procura por algo e o classifica para uma visualização agradável
less
.)fonte
Meu ponto de vista é trabalhar com comandos instalados por padrão e evitar pacotes extras se não houver um motivo específico.
No meu Debian com GNU bash esses comandos simples
fornece uma lista de qualquer coisa (instalada e não instalada). Posso então limitar os resultados com grep "instalado" ou grep -v "instalado". Também pode ser combinado com um ou mais nomes de pacotes (caracteres curinga aceitos).
O switch "-all-versions" fornece na saída linhas separadas para cada versão do pacote (estável, teste, instável, experimental).
A simples "lista apt" fornece apenas uma versão (a mais alta prioridade).
fonte
Tomando sua pergunta estritamente (você deseja mostrar uma lista de pacotes não instalados), tente usar
(editado de acordo com os comentários abaixo)
Não tenho certeza da sintaxe exata, pois estou escrevendo isso em uma caixa do Windows e não há como verificar. Talvez tente mudar o que você deseja
fonte
'^ii'
em vez de'[ii]'
), você está perdendo em pacotes que estão instalados mas não configurados por exemplo (comoiF
ouiH
por exemplo).