在本教程中,我们将向您展示如何列出和过滤Ubuntu上已安装的软件包。在需要在另一台计算机上安装相同软件包或要重新安装系统的情况下,知道如何列出Ubuntu系统上已安装的软件包可能会有所帮助。

我们还将向您展示如何检查特定的软件包是否已安装,计数已安装的软件包以及查找已安装软件包的版本。

尽管本教程是为Ubuntu编写的,但相同的说明适用于任何基于Ubuntu的发行版,包括Kubuntu,Linux Mint和Elementary OS。

列出带有Apt的已安装软件包

apt 是软件包管理系统的命令行接口。它是在Ubuntu 14.04中引入的,结合了apt-getapt-cache中最常用的命令,包括列出已安装软件包的选项。

要列出您的Ubuntu系统上已安装的软件包,请使用以下命令:

sudo apt list --installed

从上面的输出中可以看到,该命令将打印所有已安装软件包的列表,包括有关软件包版本和体系结构的信息。

软件包列表很长,最好将输出通过管道传递到less,以便于阅读:

sudo apt list --installed | less

要确定是否安装了特定的软件包,可以使用 grep命令过滤输出。例如,要确定我们的系统上是否安装了 screen 软件包,我们将运行:

sudo apt list --installed | grep screen
screen/bionic,now 4.6.2-1 amd64 [installed]

上面的输出显示我们的系统上安装了4.6.2-1屏幕版本。

使用dpkg-query列出已安装的软件包

如果运行的是较早的 Ubuntu版本,则可以使用dpkg-query命令列出软件包:

sudo dpkg-query -l | less

该命令将显示所有已安装软件包的列表,包括软件包版本,体系结构和简短说明。

您可以使用与apt输出相同的grep过滤dpkg-query -l输出:

sudo dpkg-query -l | grep package_name

创建所有已安装软件包的列表

要创建Ubuntu或Debian系统上所有已安装软件包的名称列表,并将其保存在名为packages_list.txt的文件中,请运行以下命令:

sudo dpkg-query -f '${binary:Package}\n' -W > packages_list.txt

现在有了列表,如果要在新服务器上安装相同的软件包,则可以使用以下方法:

sudo xargs -a packages_list.txt apt install

计算您的Ubuntu机器上安装的软件包数量

要了解系统上已安装了多少个软件包,可以使用与以前相同的命令,但是可以将其通过管道传递到wc实用程序并计算行数,而不是将输出重定向到文件中:

sudo dpkg-query -f '${binary:Package}\n' -W | wc -l
544

如您所见,我的Ubuntu服务器上安装了544个软件包。

结论

现在,您应该知道如何列出和过滤Ubuntu系统上已安装的软件包。如果您想了解有关 apt 命令的更多信息,请打开终端并输入man apt

如有任何疑问,请随时发表评论。

如果你喜欢我们的内容可以选择在下方二维码中捐赠我们,或者点击广告予以支持,感谢你的支持