Blog Linux Avante

Como pesquisar pacotes disponíveis na linha de comando no Debian, Ubuntu ou Linux Mint [APT]

3 de junho de 2019

Existem várias maneiras de pesquisar pacotes disponíveis no Debian, Ubuntu ou Linux Mint a partir da linha de comando, e neste artigo irei cobrir apt, apt-cache e aptitude. Use isso para pesquisar nomes de pacotes e descrições de pacotes, útil se você está procurando por um pacote específico, mas não sabe o nome exato do pacote, ou se precisa de uma ferramenta para um propósito/tarefa específica, mas não conhece as opções disponíveis.

As principais diferenças entre o uso de apt, apt-cache e aptitude para pesquisar os pacotes disponíveis é sua saída e a ordem de classificação, como você verá nos exemplos abaixo. Além disso, aptitude pode não ser instalado por padrão em sua distribuição Linux baseada em Debian.

Eu pessoalmente prefiro apt-cache por causa da saída mais fácil de ler (e normalmente não preciso de informações extras - para ver as versões instaladas/disponíveis, posso usar o apt-cache policy package-name); também tende a exibir os resultados que procuro próximos do topo.

Outra coisa a notar é que apt e apt-cache pesquisam o cache do pacote de software apt, então eles retornam ambos os pacotes disponíveis nos repositórios, bem como pacotes DEB instalados manualmente (não disponíveis nos repos), enquanto aptitude retorna apenas pacotes que estão disponíveis no repositórios.

I. Pesquise os pacotes disponíveis usando o aptitude

aptitude é um front-end baseado em Ncurses para apt. Esta ferramenta geralmente não é instalada por padrão, mas você pode instalá-la no Debian, Ubuntu, Linux Mint e outras distribuições Linux baseadas em Debian usando este comando:

Comandos para usar no terminal

sudo apt install aptitude

Você pode usar o aptitude para pesquisar pacotes na linha de comando, assim:

Comandos para usar no terminal

aptitude search PALAVRACHAVE

Exemplo:

$ aptitude search openssh

p   libconfig-model-openssh-perl                           - configuration editor for OpenSsh                                
p   libghc-crypto-pubkey-openssh-dev                       - OpenSSH key codec  
p   libghc-crypto-pubkey-openssh-dev:i386                  - OpenSSH key codec  
v   libghc-crypto-pubkey-openssh-dev-0.2.7-6af0a           -                    
v   libghc-crypto-pubkey-openssh-dev-0.2.7-6af0a:i386      -                    
p   libghc-crypto-pubkey-openssh-doc                       - OpenSSH key codec; documentation                                
p   libghc-crypto-pubkey-openssh-prof                      - OpenSSH key codec; profiling libraries                          
p   libghc-crypto-pubkey-openssh-prof:i386                 - OpenSSH key codec; profiling libraries                          
v   libghc-crypto-pubkey-openssh-prof-0.2.7-6af0a          -                    
v   libghc-crypto-pubkey-openssh-prof-0.2.7-6af0a:i386     -                    
p   libnet-openssh-compat-perl                             - collection of compatibility modules for Net::OpenSSH            
p   libnet-openssh-parallel-perl                           - run SSH jobs in parallel                                        
p   libnet-openssh-perl                                    - Perl SSH client package implemented on top of OpenSSH           
p   lxqt-openssh-askpass                                   - OpenSSH user/password GUI dialog for LXQt                       
p   lxqt-openssh-askpass:i386                              - OpenSSH user/password GUI dialog for LXQt                       
p   lxqt-openssh-askpass-l10n                              - Language package for lxqt-openssh-askpass                       
v   lxqt-openssh-askpass-l10n:i386                         -                    
i   openssh-client                                         - secure shell (SSH) client, for secure access to remote machines
p   openssh-client:i386                                    - secure shell (SSH) client, for secure access to remote machines
p   openssh-client-ssh1                                    - secure shell (SSH) client for legacy SSH1 protocol              
p   openssh-client-ssh1:i386                               - secure shell (SSH) client for legacy SSH1 protocol              
p   openssh-known-hosts                                    - download, filter and merge known_hosts for OpenSSH
p   openssh-server                                         - secure shell (SSH) server, for secure access from remote machines
p   openssh-server:i386                                    - secure shell (SSH) server, for secure access from remote machines
p   openssh-sftp-server                                    - secure shell (SSH) sftp server module, for SFTP access from remote machines
p   openssh-sftp-server:i386                               - secure shell (SSH) sftp server module, for SFTP access from remote machines

Você também pode usar a IU do aptitude Ncurses se desejar. Digite aptitude para iniciá-lo:

Aptitude ncurses interface

Você pode pesquisar pacotes pressionando / e começar a digitar a palavra-chave.

II. Pesquise pacotes disponíveis usando apt-cache

Use apt-cache para pesquisar pacotes disponíveis nos repositórios Debian, Ubuntu ou Linux Mint (e pacotes DEB instalados que não estão nos repositórios) assim:

Comandos para usar no terminal

apt-cache search PALAVRACHAVE

Exemplo:

$ apt-cache search openssh

openssh-client - secure shell (SSH) client, for secure access to remote machines
openssh-server - secure shell (SSH) server, for secure access from remote machines
openssh-sftp-server - secure shell (SSH) sftp server module, for SFTP access from remote machines
python-setproctitle - Setproctitle implementation for Python 2
python3-setproctitle - Setproctitle implementation for Python 3
ssh - secure shell client and server (metapackage)
agent-transfer - copy a secret key from GnuPG's gpg-agent to OpenSSH's ssh-agent

...

ssh-askpass-gnome - interactive X program to prompt users for a passphrase for ssh-add
ssh-audit - tool for ssh server auditing
sshpass - Non-interactive ssh password authentication

Removi parte da saída porque pode ficar muito longa. A ordem dos resultados visíveis não foi alterada.

III. Pesquise os pacotes disponíveis usando apt

Usando apt, você pode pesquisar os pacotes disponíveis na linha de comando da seguinte maneira:

Comandos para usar no terminal

apt search PALAVRACHAVE

Substitua PALAVRACHAVE pela palavra-chave que deseja pesquisar (você pode adicionar várias palavras-chave entre aspas).

Aqui está um exemplo de pesquisa por "openssh" junto com sua saída:

$ apt search openssh

Sorting... Done
Full Text Search... Done
agent-transfer/bionic 0.41-1ubuntu1 amd64
  copy a secret key from GnuPG's gpg-agent to OpenSSH's ssh-agent

cme/bionic,bionic 1.026-1 all
  Check or edit configuration data with Config::Model

connect-proxy/bionic 1.105-1 amd64
  Establish TCP connection using SOCKS4/5 or HTTP tunnel

...

openssh-client/bionic,now 1:7.6p1-4 amd64 [installed]
  secure shell (SSH) client, for secure access to remote machines

openssh-client-ssh1/bionic 1:7.5p1-10 amd64
  secure shell (SSH) client for legacy SSH1 protocol

openssh-known-hosts/bionic,bionic 0.6.2-1 all
  download, filter and merge known_hosts for OpenSSH

openssh-server/bionic 1:7.6p1-4 amd64
  secure shell (SSH) server, for secure access from remote machines

openssh-sftp-server/bionic 1:7.6p1-4 amd64
  secure shell (SSH) sftp server module, for SFTP access from remote machines

putty-tools/bionic 0.70-4 amd64
  command-line tools for SSH, SCP, and SFTP

python-scp/bionic,bionic 0.10.2-1 all
  scp module for paramiko

Mais uma vez, removi alguns dos resultados porque a lista de resultados é bastante longa. A ordem dos resultados não foi alterada.

Para todos os três, os resultados da pesquisa podem ser muito longos. Nesses casos, você pode executá-los por meio do more, para facilitar a leitura, assim:

Comandos para usar no terminal

apt-cache search PALAVRACHAVE | more

Você também pode excluir resultados que não incluem uma palavra-chave específica (PALAVRACHAVE2 neste exemplo) usando grep:

Comandos para usar no terminal

apt-cache search PALAVRACHAVE | grep PALAVRACHAVE2

grep diferencia maiúsculas de minúsculas por padrão. Adicione -i (grep -i PALAVRACHAVE2) para ignorar maiúsculas e minúsculas.

Confira a versão original desse post em inglês
Propaganda
Blog Comments powered by Disqus.