如何从命令行获取应用程序的版本?

如何从命令行获取应用程序的版本?

我想知道如何获取没有

--version或者-version

方法实施。

答案1

您可以使用dpkgapt-cache

要检查 的版本bash,例如:

dpkg -l bash

apt-cache show bash

答案2

如果程序没有任何显示版本信息的命令行选项,您可以尝试使用它dpkg来获取通常以某种方式包含程序版本的软件包版本。

dpkg -S "$(which YOUR_PROGRAM)"

打印包含 YOUR_PROGRAM 的包,并且

dpkg --status YOUR_PACKAGE | grep ^Version

打印 YOUR_PACKAGE 的版本。

你可以把它们放在一起:

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

例如像这样使用它ls

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

答案3

以下命令还为您提供准确的已安装软件包版本。

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

例子

$ 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

答案4

您可以使用dpkg-query来获取包的版本:

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

仅获取版本字符串:

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

相关内容