在本教程中,我们将向您展示如何列出和过滤 Ubuntu 上已安装的软件包。当您需要在另一台计算机上安装相同的软件包或想要重新安装系统时,了解如何列出 Ubuntu 系统上已安装的软件包会很有帮助。
我们还将向您展示如何检查是否安装了特定的软件包、计算已安装的软件包以及找出已安装软件包的版本。
尽管本教程是针对 Ubuntu 编写的,但相同的说明适用于任何基于 Ubuntu 的发行版,包括 Kubuntu、Linux Mint 和 Elementary OS。
使用 apt 列出已安装的软件包#
apt是包管理系统的命令行界面。它在 Ubuntu 14.04 中引入,结合了最常用的命令apt-get
and apt-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]
上面的输出显示我们的系统上安装了 screen 版本 4.6.2-1。
使用 dpkg-query 列出已安装的软件包#
如果您运行的是较旧的Ubuntu版本,那么您可以使用dpkg-query
列出软件包的命令:
sudo dpkg-query -l | less
该命令将显示所有已安装软件包的列表,包括软件包版本、体系结构和简短描述。
您可以过滤dpkg-query -l
输出与grep
与apt
output:
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
.
如果您有任何疑问,请随时发表评论。