Extraindo a Versão de um Pacote do Debian

Publicado por Mauricio Ferrari em 05/01/2021

[ Hits: 1.370 ]

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

 


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

Deixando o Google Chrome em modo Dark no Linux - Experimental

Letras Bacanas no seu Shell Script sem Figlet

JDownloader2 para Baixar Arquivos de Sites de Upload

Conky Manager no Linux Mint 20

Instalando Vim 8.2 completo no Linux Mint 20

Leitura recomendada

Alias no Ubuntu 10.04 com .bash_aliases

Atalhos do KDE no Linux Mint 17.1

Limpando sua memória cache de forma simples

mkpasswd: no DBM database on system - no action performed

Inicializando o OpenOffice via linha de comando

  

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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts