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

我想知道如何获取没有安装的程序的版本信息

--version-version

方法实施。

您可以使用dpkgapt-cache

要检查bash的版本,例如:

 dpkg -l bash apt-cache show bash 

如果程序没有显示版本信息的任何命令行选项,您可以尝试使用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 

您可以使用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 

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

 apt-cache policy  | 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