Extraindo a Versão de um Pacote do Debian

Publicado por Mauricio Ferrari (LinuxProativo) em 05/01/2021

[ Hits: 1.793 ]

Blog: https://www.youtube.com/@LinuxProativo

 


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.

Outras dicas deste autor

Não quer usar a PlayStore do Google, conheça uma alternativa

Efetuando cálculo de Aspect Ratio de vídeos em C/C++

Resetando as Configurações do .Xresources

Fazendo Upload no Git pelo Terminal

Instalando Vim 8.2 completo no Linux Mint 20

Leitura recomendada

Listando os últimos comandos executados no bash

Desmontando dispositivos ocupados (busy)

Configurar o mouse / desativar o botão direito

Resetando as Configurações do .Xresources

Imprimindo "man pages"

  

Comentários
[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