103 votes

Comment puis-je trouver le numéro de version d'un paquet installé via dpkg ?

J'utilise le dpkg -l pour connaître la version d'un paquet que j'ai installé. Par exemple :

dpkg -l network-manager

renvoie les informations sur le paquet :

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                      Version                   Description
+++-=========================-=========================-==================================================================
ii  network-manager           0.8.3~git.20101118t223039 network management framework daemon

Comme vous pouvez le voir, il renvoie 0.8.3~git.20101118t223039 ce qui est faux car cela tronque la version (j'ai choisi une version longue pour les besoins de cette question). La façon dont j'ai résolu ce problème dans le passé est de passer un argument COLUMNS stupidement long pour le faire s'étendre :

COLUMNS=200 dpkg -l network-manager

ce qui me donne le numéro de version complet, mais aussi un tas d'ordures :

Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                                         Version                                      Description
+++-============================================-============================================-========================================================================================================
ii  network-manager                              0.8.3~git.20101118t223039.d60a988-0ubuntu1   network management framework daemon

Maintenant je peux voir le numéro de version complet, qui est 0.8.3~git.20101118t223039.d60a988-0ubuntu1 .

J'ai l'impression que ce n'est pas la bonne façon de trouver le numéro de version d'un paquet installé. Cela n'a jamais vraiment été un problème dans le passé, mais avec l'ajout de "ubuntu" dans les versions et la prolifération des PPAs, ces chaînes deviennent de plus en plus longues. Existe-t-il un moyen plus simple ?

0voto

Daniel Points 3489

La commande apt -qq list <package-name> indique si le paquet est installé et semble renvoyer le numéro de version complet.

Exemple 1 - utilisations -qq

$ apt -qq list network-manager
network-manager/now 1.10.14-0ubuntu2 amd64 [installed,local]

Exemple 2 - utilisations -qq y *

$ apt -qq list virtualbox-6*
virtualbox-6.0/unknown 6.0.24-139119~Ubuntu~bionic amd64
virtualbox-6.1/unknown,now 6.1.16-140961~Ubuntu~bionic amd64 [installed]

Exemple 3 - utilisations -qqa

$ apt -qqa list keepassxc
keepassxc/bionic,now 2.6.2-1ppa1~bionic1 amd64 [installed]
keepassxc/bionic 2.3.1+dfsg.1-1 amd64

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X