Extraindo a Versão de um Pacote do Debian

Publicado por Mauricio Ferrari em 05/01/2021

[ Hits: 1.118 ]

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

Integrando AppImage no Debian, Ubuntu e Linux Mint

Spotify Atualizado no Ubuntu e Linux Mint

Limpeza Extra no Slackware

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

Função para Abrir uma Interface do tkinter no Centro da Tela em Python

Leitura recomendada

Como economizar na digitação do seu prompt?

Obtendo lista dos repositórios de pacotes em sistemas derivados do Debian

Checar versão do Dspace

Verificar e despachar e-mails encalhados no Sendmail

Ubuntu 12.04 - Configuração de Dual View

  

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