Verificar a versão do pacote usando o apt-get / aptitude?

430

Antes de instalar um pacote, gostaria de saber qual versão obteria. Como verifico a versão antes de instalar usando apt-getou aptitudeno debian ou no ubuntu?

Jeff Schaller
fonte

Respostas:

540

apt-get

Você pode executar uma simulação para ver o que aconteceria se você atualizar / instalar um pacote:

apt-get -s install <package>

Para ver todas as atualizações possíveis, execute um upgradeno modo detalhado e (para segurança) com a simulação, pressione npara cancelar:

apt-get -V -s upgrade

apt-cache

A opção policypode mostrar a versão instalada e remota (candidato à instalação) de um pacote.

apt-cache policy <package>

apt-show-versões

Se instalado, mostra informações de versão sobre um ou mais pacotes:

apt-show-versions <package>

Passar o -ucomutador com ou sem um nome de pacote mostrará apenas pacotes atualizáveis.

aptidão

A GUI do console aptitudepode exibir pacotes atualizáveis ​​com novas versões. Abra o menu 'Pacotes Atualizáveis'. Pressionar vum pacote mostrará informações mais detalhadas da versão.

Ou na linha de comando:

aptitude versions <package>

A passagem -Vmostrará informações detalhadas sobre as versões, novamente para segurança com a opção de simulação:

aptitude -V -s install <package>

Substituindo install <package>por upgradeirá mostrar as versões de todos os pacotes atualizáveis.

abanar
fonte
9
"O programa 'apt-show-versions' não está instalado no momento. Você pode instalá-lo digitando .."
Peter Ehrlich
1
apt-get -V -s upgradefez o meu dia, obrigado!
dr.dimitru
É recomendável executar apt-get install -scom sudo?
precisa saber é o seguinte
@edwinksl: Funciona bem sem ele, então eu não esperaria que o sudo fosse melhor.
Zondo
3
apt show <packages>também pode ser adicionado à lista
leo
59

Outra maneira de usar o dpkg e o grep :

dpkg -s <package> | grep Version
Alf
fonte
14
Isso não funciona quando o <package> ainda não está instalado (o que era um requisito na pergunta).
Serrano
1
Serrano Pereira, essa resposta me ajudou, que tinha uma pergunta ligeiramente diferente, mas semelhante o suficiente para não enganar o fluxo de pilha.
Jose Alban
melhor: dpkg -s <package> | grep Version (Nota da capital V)
langlauf.io
21

Outra opção, se você não souber o nome completo do pacote, é formatar a saída de pesquisa do aptitude:

aptitude search <package> -F "%c %p %d %V"

%c= status (pacote instalado ou não)
%p= nome do
%dpacote
%V= descrição do pacote = versão do pacote disponível

Referência: http://linux.die.net/man/8/aptitude

Diego Ponciano
fonte
8

Para obter o nome do pacote:

apt-cache search *search term*

Para obter detalhes da versão:

apt-cache show *packagename*

Eu acredito apt-gete apt-cacheestão sendo removidos, com apte aptitudese tornando o método preferido. Dada a longevidade do apartamento, provavelmente é uma aposta segura por algum tempo!

Ned Flanders
fonte
Era exatamente isso que eu estava procurando. Usa repo remoto para obter a versão e todos os tipos de outras informações.
precisa saber é
6

Você pode escrever apt show <package>

elvis.dukaj
fonte
Isso já estava coberto de Ned Flanders' resposta, unix.stackexchange.com/a/362794/22812
Anthony Geoghegan
@yurij você deve ter wirtten sua própria resposta de acordo com a quantidade de edição que você fez
kiwy
@AnthonyGeoghegan você está errado, ele fala sobre o que apt-cacheeu estou usando, aptsão duas coisas diferentes ... O que estou perdendo?
precisa saber é o seguinte
apte apt-cachefaça a mesma coisa. Se você verificar o código-fonte, os dois serão front-ends com a mesma funcionalidade: for show, uma função chamada ShowPackagee for search, uma função chamada DoSearch.
Anthony Geoghegan
3
 $ rmadison gdm3
 gdm3 | 2.30.5-6squeeze2 | squeeze-security | i386
 gdm3 | 2.30.5-6squeeze5 | squeeze          | i386
 gdm3 | 3.4.1-8          | wheezy           | i386
 gdm3 | 3.14.1-7         | jessie           | i386
 gdm3 | 3.18.0-2         | stretch          | i386
 gdm3 | 3.18.0-2         | sid              | i386

de devscripts.deb

sbin_bash
fonte
Para o ubuntu, isso mostra versões encontradas para diferentes versões do ubuntu (nomes de código como "preciso", "confiável" e "xenial"). Muito lento, mas pode ajudá-lo com a decisão de atualizar seus LTS;)
Tomasz Gandor
2

Para ver o pacote disponível mais recente antes da instalação. Execute a atualização para ter todas as atualizações mais recentes do pacote.

$sudo apt-get update

Agora, para verificar o pacote mais recente disponível em seu repositório antes de instalar, execute o comando abaixo.

$apt-cache show <package name>

Exemplo:

$apt-cache show latexila

ou

$apt-cache show npm
Yanish Pradhananga
fonte