Pular para o conteúdo

Extraindo a Versão de um Pacote do Debian

Dica publicada em Linux / Comandos
Mauricio Ferrari (LinuxProativo) maurixnovatrento
Hits: 1.879 Categoria: Linux Subcategoria: Comandos
  • Indicar
  • Impressora
  • Denunciar

Extraindo a Versão de um Pacote do Debian

Às vezes, você vai baixar um pacote DEB na internet e o mesmo não informa a versão do pacote.

Um exemplo disso é o Google Chrome, cujo o pacote vem com essa nomenclatura: google-chrome-stable_current_amd64.deb. Aí não tem como saber a versão.

Porém, estudando alguns scripts do slackbuilds, encontrei um método bem funcional para isso. Então, basta abrir o terminal e digitar algo assim:

ar p google-chrome-stable_current_amd64.deb control.tar.xz 2> /dev/null | tar xJO ./control 2> /dev/null | grep Version | awk '{print $2}' | cut -d- -f1

É claro que esse método foi adaptado, pois é para o control.tar.xz que usa os parâmetros "xJO" no tar. Para o control.tar.gz, aí tem que ser os parâmetros "zxO" no tar, conforme a instrução original no qual tirei como base.

Nesse esquema, os comandos ar e tar usam parâmetros para ler o arquivo control dentro de control.tar.xz presente no pacote do Chrome, enquanto os comandos grep awk e cut são responsáveis por separar apenas o número da versão a ser exibido no terminal.

Espero que isso venha a ser útil para alguém. Até mais.

Transmageddon 1.5 no Slackware Current e no Python 3.9 - É sério!

Ícone do atunes não aparece no Menu Inicial no Slackware

UMPlayer reformulado para o Linux Mint 20

Integrando AppImage no Debian, Ubuntu e Linux Mint

deb2appimage - Crie AppImage facilmente

Passwd não alterando senha de usuário

Gravar CD ou DVD via linha de comando

Complementando os comandos com [TAB]

Backups simples e seguros com o ssh e dd no Linux

Formas para forçar o encerramento de programas travados

#1 Comentário enviado por Carlos_Cunha em 07/01/2021 - 22:06h
Legal, saber que da para fazer dessa forma, mas acredito que usar o dpkg(para trabalhar com .deb) seja mais simples/rápido/padrão.
Mesmo assim, ótima dica.


dpkg -I XXXXXX.deb |grep -i version


#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#
#2 Comentário enviado por maurixnovatrento em 08/01/2021 - 13:08h

[1] Comentário enviado por Carlos_Cunha em 07/01/2021 - 22:06h

Legal, saber que da para fazer dessa forma, mas acredito que usar o dpkg(para trabalhar com .deb) seja mais simples/rápido/padrão.
Mesmo assim, ótima dica.


dpkg -I XXXXXX.deb |grep -i version


#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#



Bacana sua contribuição. O problema é que esse funciona para pacotes já instalados ou que tenham no repositório oficial. Aquele comando gigante, foi usado em um script para gerar um pacote para o Slackware.

Mesmo assim, é um ótimo comando.

#3 Comentário enviado por Carlos_Cunha em 12/01/2021 - 10:42h

[2] Comentário enviado por mauricio123 em 08/01/2021 - 13:08h


[1] Comentário enviado por Carlos_Cunha em 07/01/2021 - 22:06h

Legal, saber que da para fazer dessa forma, mas acredito que usar o dpkg(para trabalhar com .deb) seja mais simples/rápido/padrão.
Mesmo assim, ótima dica.


dpkg -I XXXXXX.deb |grep -i version


#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#



Bacana sua contribuição. O problema é que esse funciona para pacotes já instalados ou que tenham no repositório oficial. Aquele comando gigante, foi usado em um script para gerar um pacote para o Slackware.

Mesmo assim, é um ótimo comando.




Opa! Não não, é para fazer o mesmo que vc fez no caso, para saber a versão de um pacote .deb que vc possua. Para um já instalado ficaria assim:

dpkg -s google-chrome-stable|grep -i version
ou
dpkg -l |grep google-chrome


#4 Comentário enviado por maurixnovatrento em 13/01/2021 - 20:57h

[3] Comentário enviado por Carlos_Cunha em 12/01/2021 - 10:42h


[2] Comentário enviado por mauricio123 em 08/01/2021 - 13:08h


[1] Comentário enviado por Carlos_Cunha em 07/01/2021 - 22:06h

Legal, saber que da para fazer dessa forma, mas acredito que usar o dpkg(para trabalhar com .deb) seja mais simples/rápido/padrão.
Mesmo assim, ótima dica.


dpkg -I XXXXXX.deb |grep -i version


#-------------------------------------------------------------------------------------#
"Falar é fácil, me mostre o código." - Linus Torvalds
#-------------------------------------------------------------------------------------#



Bacana sua contribuição. O problema é que esse funciona para pacotes já instalados ou que tenham no repositório oficial. Aquele comando gigante, foi usado em um script para gerar um pacote para o Slackware.

Mesmo assim, é um ótimo comando.




Opa! Não não, é para fazer o mesmo que vc fez no caso, para saber a versão de um pacote .deb que vc possua. Para um já instalado ficaria assim:

dpkg -s google-chrome-stable|grep -i version
ou
dpkg -l |grep google-chrome





Verdade. Verifiquei que aquele funciona como o código que eu apresentei. Usando dpkg, precisaria filtrar a saída para ficar como o código que eu apresentei.

Agradeço mais uma vez.

Contribuir com comentário

Entre na sua conta para comentar.