Comment obtenir la version d'une application à partir de la ligne de commande?


20

Je voudrais savoir comment obtenir les informations de version d'un programme installé qui n'a pas le

--version ou -version

méthode mise en œuvre.


Je sais que vous voulez dire pour n'importe quel programme, mais pouvez-vous dire quel programme exactement?

Réponses:


22

Vous pouvez utiliser dpkgou apt-cache.

Pour vérifier la version de bash, par exemple:

dpkg -l bash

apt-cache show bash

Pour ceux qui recherchent simplement des réponses Linux générales, l'équivalent de ce qui précède pour RHEL / CentOS / Fedora (et similaire) serait yum requires <file>par exemple yum requires ssh-keygenvous donnerait votre version openSSH.
SeldomNeedy

1
@SeldomNeedy - yum est amorti sur Fedora, Fedora utilise dnf. Centos / RHEL toujours sur miam.
Panther

7

Si le programme n'a pas d'option de ligne de commande qui affiche des informations sur la version, vous pouvez essayer d'utiliser dpkgla version du package qui contient généralement la version du programme d'une manière ou d'une autre.

dpkg -S "$(which YOUR_PROGRAM)"

imprime le package qui contient YOUR_PROGRAM, et

dpkg --status YOUR_PACKAGE | grep ^Version

imprime la version de YOUR_PACKAGE.

Vous pouvez tout rassembler:

dpkg --status "$(dpkg -S "$(which YOUR_PROGRAM)" | cut -d: -f1)" | grep ^Version

Utilisez-le par exemple comme ceci pour ls:

dpkg --status "$(dpkg -S "$(which ls)"| cut -d: -f1)"| grep ^Version

1
Comme suggestion. Mettez tout cela dans une fonction et chargez-le lorsque votre shell démarre.
Zoke

1

Vous pouvez utiliser dpkg-querypour obtenir la version d'un package:

$ dpkg-query -W -f='${binary:Package} ${Version}\n' firefox
firefox 29.0+build1-0ubuntu0.13.10.3

Pour obtenir uniquement la chaîne de version:

$ dpkg-query -W -f='${Version}\n' firefox
29.0+build1-0ubuntu0.13.10.3

0

La commande ci-dessous vous donne également la version exacte du package installé.

apt-cache policy <package-name> | grep Installed: | cut -d: -f2

Exemple

$ apt-cache policy firefox | grep Installed: | cut -d: -f2
24.0+build1-0ubuntu1

$ apt-cache policy gedit | grep Installed: | cut -d: -f2
3.8.3-0ubuntu3
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.