介绍
在这个实验中,你将学习如何使用不同的方法检查 Linux 中已安装软件的版本。你将首先使用许多命令行程序支持的通用 --version 选项,以快速显示它们的版本。
接下来,你将探索如何使用 apt show 命令(这是基于 Debian 的系统上的一个强大工具)来检索已安装软件包的详细信息,包括它们的版本。最后,你将学习如何使用 dpkg -l 命令验证已安装软件的版本,该命令会列出已安装的软件包及其版本。这些技术对于故障排除、确保兼容性以及管理你的 Linux 系统上的软件至关重要。
使用软件的 --version 选项显示版本
在这一步中,你将学习一种在 Linux 中使用 --version 选项检查已安装软件版本的常用方法。许多命令行程序都支持使用此选项来显示它们的版本信息。
让我们用几个你可能会遇到的常见命令来试试看。
首先,让我们检查 bash shell 的版本。在你的终端中输入以下命令并按回车键:
bash --version
你应该会看到类似以下的输出,显示系统上安装的 bash 版本:
GNU bash, version 5.1.16(1)-release (...)
...
接下来,让我们检查经常在终端中使用的 nano 文本编辑器的版本。输入:
nano --version
输出将显示 nano 的版本:
GNU nano, version 5.9
...
最后,让我们检查用于通过 URL 传输数据的工具 curl 命令的版本。输入:
curl --version
你会看到列出 curl 版本和支持的协议的输出:
curl 7.81.0 (...)
...
使用 --version 是一种快速简便的方法,可让你了解自己正在使用的特定命令行工具的版本。这在故障排除或确保兼容性方面通常很有帮助。
点击 继续 以继续操作。
使用 apt show 检查软件包版本
在上一步中,你学习了如何使用 --version 标志检查命令的版本。然而,这仅在命令本身支持该选项时才有效。一种更通用的获取已安装软件详细信息(包括其版本)的方法是使用包管理器。
在像 Ubuntu 这样基于 Debian 的系统上,apt 命令用于软件包管理。apt show 命令可以显示特定软件包的信息。
让我们使用 apt show 来检查 nano 软件包的版本。在你的终端中输入以下命令并按回车键:
apt show nano
你会看到关于 nano 软件包的大量信息。查找以 Version: 开头的行。
Package: nano
Version: 5.9-4
...
APT-Sources: http://archive.ubuntu.com/ubuntu jammy/main amd64 Packages
Description: small, friendly text editor inspired by Pico
...
输出显示了软件包名称、版本、依赖项、描述和其他详细信息。这是一种获取已安装软件包全面信息的强大方法。
现在,让我们尝试检查 curl 软件包的信息:
apt show curl
同样,在输出中查找 Version: 行。
Package: curl
Version: 7.81.0-1ubuntu1.10
...
APT-Sources: http://security.ubuntu.com/ubuntu jammy-updates/main amd64 Packages
Description: command line tool for transferring data with URL syntax
...
当你需要除版本号之外的更多详细信息(例如软件包的依赖项或其安装来源)时,使用 apt show 特别有用。
点击 继续 进入下一步。
使用 dpkg -l 验证已安装的版本
在这一步中,你将学习另一个用于验证系统上软件包安装情况和版本的命令:dpkg。dpkg 命令是管理 Debian 软件包的底层工具,而 apt 在背后使用 dpkg。
dpkg -l 命令会列出所有已安装的软件包。这可能会产生很长的输出,因此通常会将输出通过管道传递给 grep 以过滤特定的软件包。
让我们使用 dpkg -l 来检查 nano 软件包是否已安装并查看其版本。在你的终端中输入以下命令并按回车键:
dpkg -l nano
如果 nano 软件包已安装,输出中将显示一行关于它的信息。第二列显示版本。
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 Architecture Description
+++-==============-============-============-============================================
ii nano 5.9-4 amd64 small, friendly text editor inspired by Pico
在这个输出中:
- 前两列中的
ii表示软件包已安装(i)且其配置文件也已安装(i)。 nano是软件包名称。5.9-4是已安装的版本。
现在,让我们使用相同的命令检查 curl 软件包:
dpkg -l curl
你应该会看到 curl 软件包的类似输出:
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 Architecture Description
+++-==============-============-============-============================================
ii curl 7.81.0-1ubuntu1.10 amd64 command line tool for transferring data with URL syntax
dpkg -l 命令是验证基于 Debian 的系统上已安装软件包的存在和版本的基础工具。
点击 继续 完成此实验。
总结
在这个实验中,你学习了如何使用不同方法检查 Linux 中已安装软件的版本。你首先了解了在 bash、nano 和 curl 等各种命令行工具中使用 --version 选项来快速显示其版本的常见做法。这种方法简单直接,但依赖于软件是否支持该选项。
随后,你发现了在基于 Debian 的系统上使用 apt 包管理器的更全面的方法。通过对 nano 等软件包使用 apt show 命令,你可以获取已安装软件包的详细信息,包括其版本,这是一种更通用的验证软件版本的方法。



