aptitude
torna conveniente mostrar quais programas em uma pesquisa você já instalou no sistema (com a ajuda de grep
):
aptitude search flash | grep ^i
Na verdade, a pesquisa de aptitude
é muito mais poderosa do que a obtida por meio do grep
, pois ela oferece suporte à pesquisa contextual:
, por exemplo, encontra todos os pacotes com 'flash' no nome do pacote instalado:
aptitude search '~iflash'
Uma "forma longa" equivalente da "forma abreviada" ~i
:
aptitude search '?installed(flash)'
Observe que os padrões de pesquisa são gratuitos (não ancorados) por padrão. Para ancorá-los, você precisa usar padrões de âncora ' ^
' (início da string) e / ou ' $
' (fim da string).
Para encontrar todos os pacotes cujos nomes começam com 'ttf' ou 'fonte':
aptitude search '(^ttf|^font)'
(Nota: esta é uma solução para um bug em aptitude
, pois o regex correto de '^(ttf|font)'
não funciona corretamente - ele encontra pacotes cujos nomes começam com 'ttf' ou contêm 'fonte'.)
Outros recursos interessantes do aptitude
:
Mostrar todos os pacotes com 'firmware' em seu nome que também possuem 'wireless' em sua descrição:
aptitude search 'firmware ~dwireless'
ou longa forma:
aptitude search '?and(?name(firmware),?description(wireless))'
(Nota: no formulário curto, os argumentos delimitados por espaço são ANDed entre aspas; se forem passados como argumentos de linha de comando argv [] separados, eles são ORed.)
p atmel-firmware - Firmware for Atmel at76c50x wireless networking chips.
p firmware-atheros - Binary firmware for Atheros wireless cards
...
p libertas-firmware - Firmware for Marvell's libertas wireless chip series
p zd1211-firmware - Firmware images for the zd1211rw wireless driver
~U
mostra todos os pacotes que podem ser atualizados de suas versões atuais com novas versões:
# aptitude update ; aptitude versions '~U'
Package virtualbox-4.1:
i 4.1.18-78361~Debian~squeeze 100
p 4.1.20-80170~Debian~squeeze <NULL> 500
Mostrar pacotes que recomendam "gcc-multilib"
$ aptitude search '~DRecommends:gcc-multilib'
i libc6-dev-i386 - Embedded GNU C Library: 32-bit development libraries for AMD64
Explique por que o 'fuse-utils' pode precisar ser instalado
$ aptitude why fuse-utils
i xorg Depends xterm | x-terminal-emulator
pi gnome-terminal Provides x-terminal-emulator
pi gnome-terminal Recommends gvfs
pi gvfs Depends libgdu0 (>= 2.29.90)
pi libgdu0 Depends udisks (< 1.1.0)
pi udisks Recommends ntfsprogs
pi ntfsprogs Depends fuse-utils (> 2.5.0)
(Este exemplo mostra algumas das loucuras resultantes do padrão desde a instalação de todos os pacotes "Recommends". A instalação do gnome-terminal acaba instalando o ntfsprogs e o fuse-utils, egad! Acho que a maioria das pessoas só quer o perspectiva de terminal e não a integração integrada do NTFS, que é opcional, a menos que eles especificaram.)
Encontre todos os pacotes que fornecem o serviço "mail-transport-agent":
$ aptitude search '?provides(mail-transport-agent)'
p citadel-mta - complete and feature-rich groupware server (mail transport agent)
...
p nullmailer - simple relay-only mail transport agent
p postfix - High-performance mail transport agent
i sendmail-bin - powerful, efficient, and scalable Mail Transport Agent
p ssmtp - extremely simple MTA to get mail off the system to a mail hub
p xmail - advanced, fast and reliable ESMTP/POP3 mail server
Mostrar todos os nomes de pacotes instalados, que não são essenciais nem automaticamente instalados por dependências:
$ aptitude search '~i!(~E|~M)' -F '%p'
Infelizmente, esse material é bastante mal documentado e difícil de encontrar, mas aqui é a melhor referência (do mantenedor do 'aptitude').