我们都知道 Linux 是一个内核,而不是像 Windows 10 这样的操作系统。许多供应商使用 Linux 内核来创建各种发行版,如 Ubuntu、Debian、SuSE。 不同的操作系统有自己的 GUI,比如 Ubuntu 有 gnome,SuSE 有 KDE。 但请记住,基础始终是命令行界面 (CLI),它比 GUI 更快。 命令行界面在 Linux 用户中最流行和最有用的原因是它不需要更多的系统内存和 CPU。 在 Linux 中,软件包被安装并存储在系统存储库中。 使用不同的终端 shell 命令,我们可以检查并创建不同 Linux 操作系统中已安装包的列表。
为什么我们更喜欢包管理器?
包管理器的优势在于,如果我们想使用图形用户界面的包安装方法手动安装程序,我们必须确保配置已设置并且所有必需的依赖项在计算机上都是最新的。 但是包管理器会自动执行此操作,因此您不必担心配置设置或安装特定程序的依赖关系。
您所要做的就是运行一个命令,然后在您的计算机上安装该程序。 在 Linux 中,包管理器可用于安装应用程序并查找机器内已安装的包。 在这篇文章中,我们将学习如何在最常用的 Linux 发行版中生成已安装包的索引。
不同 Linux 发行版的工具列表
不同的 Linux 发行版使用各种工具和方法在系统内安装软件包。 这是我们将在本文中使用的命令工具列表,用于创建各种 Linux 发行版上已安装包的列表。 我们将看到一些用于 Debian、Red Hat Linux Enterprise、 Fedora、SuSE 和 Arch Linux。
- Red Hat Linux 或 CentOS 使用
yum
工具在.rpm
格式。 - FedoraRed Hat 和 CentOS 使用
dnf
工具在.rpm
格式。 - SuSE 使用
RPM
,但它也使用自己的打包工具,称为zypper
. - Arch Linux 使用
pacman
命令。 - Debian 和 Ubuntu 使用
apt
和dpkg
工具在.deb
格式。
1. 使用 RPM
命令
RPM 代表 Red Hat Package Manager,但它也用于其他发行版,如 CentOS, Fedora,和苏塞。 RPM 有自己的安排来获取已安装软件包及其文件的列表。 通过使用 RPM
命令,您可以创建一个列表并对已安装包的名称进行排序。 您还可以导出一个文本文件,该文件将包含 Linux 系统上已安装软件包的所有名称。
启用查询以列出包名称:
$ rpm -qa --last
– –
总结基于 RPM 的系统上已安装软件包的列表:
$ rpm -qa --last |wc --l
在基于 RPM 的系统上将已安装包的列表导出到文本文件:
$ rpm -qa --last > packages.txt
2. 使用 YUM
命令
YUM(Yellow Updater Modified)是一个开源的基于 GUI 的命令行界面系统,专门用于在 Red Hat Linux 和 CentOS 上安装、删除、更新和运行查询。 这 yum
命令基于服务器-客户端架构的方法工作。
我们可以使用 yum
命令来准备已安装软件包的列表,获取详细信息并计算我们的 Linux 机器中已安装软件包的总数。
创建已安装包的列表:
$ yum list installed $ yum list all
获取有关包的详细信息:
$ yum info acl
总结已安装包列表:
$ yum list installed | wc –l
3. 使用 DNF
命令
DNF (Dandified Yum) 是 Red Hat、CentOS 和 Fedora Linux。 它于 2013 年发布于 Fedora 18,但现在它也是自 2015 年以来 RHEL 8 和 CentOS 8 的默认包管理器。
由于 DNF 命令在用户中既快捷又方便,这里有一些终端命令可以创建已安装软件包的列表、获取软件包的详细信息以及计算系统上已安装软件包的总数。
您还可以创建和导出一个文本文件,其中将包含有关已安装软件包的所有信息。 文本文件将保存在 home
目录。
创建已安装包的列表:
$ dnf list installed
获取有关包的详细信息:
$ dnf info tilix
计算系统中安装的软件包总数:
$ dnf list installed | wc –l
导出已安装包的列表:
$ dnf list installed > packages.txt
4. 使用 Zypper
命令
Zypper 是 Open SuSE 和 SuSE Linux 中的包管理工具。 它是一个命令行包管理器,使用 libzypp 软件安装库。 这 zypper
可用于通过命令行界面执行安装、删除和更新软件包来管理软件存储库。
它还可以执行一些主要查询命令来列出 Linux 系统上已安装的软件包。 在这里,一些基本的 zypper
给出命令以获取 SuSE Linux 中已安装软件包的列表。
创建已安装包的列表:
$ zypper se --installed-only
获取有关包的详细信息:
$ zypper info nano
计算系统中安装的软件包总数:
$ zypper se --installed-only | wc –l
导出已安装包的列表:
$ zypper se --installed-only > packages.txt
5. 使用 Pacman
命令
Pacman(包管理器)是 Arch Linux 系统及其衍生产品(如 ArcoLinux、Manjaro、Chakra 等)的默认命令行包管理器工具。 它使用 libalpm Linux 库,它允许我们安装、删除、构建和管理 Arch Linux 软件包。
一开始,我们可以运行查询命令(-Q
) 检查包裹清单。 然后我们将能够获取详细信息并计算在我们的 Linux 系统上安装的包的总数。
创建已安装包的列表:
$ pacman -Q
获取有关包的详细信息:
$ pacman –Qi bash
计算系统中安装的软件包总数:
$ pacman -Q | wc –l
导出已安装包的列表:
$ pacman -Q > packages.txt
6. 使用 DPKG
命令
Dpkg (Debian Package) 是一个低级的包管理工具,适用于基于 Debian 的系统,如 Ubuntu、Linux mint。 这 dpkg
命令主要用于管理 Debian 软件包。 但有时 Debian 软件包安装程序不足以立即获取必要的存储库文件。
即使不建议使用 dpkg
工具由于依赖问题。 但是,您可以使用 dpkg
命令来生成和导出 Ubuntu Linux 上已安装软件包的记录。
获取已安装包的构建信息:
$ dpkg -l
计算系统中安装的软件包总数:
$ dpkg --list | wc --lines
导出已安装包的列表:
$ dpkg -l > packages.txt
7. 使用 Apt
命令
APT 代表 Advanced Package Tool,它是基于 Debian 的系统(如 Ubuntu、Linux mint)的高级命令行软件管理器。 它可以用来查找和安装新包、升级包、删除包,并且可以处理依赖问题。
您可以使用 apt
命令工具在 Linux 机器上创建已安装包的索引。 您还可以导出一个文本文件,其中包含有关 Debian Linux 上已安装软件包的所有信息。 文本文件通常存储在 home
目录。
获取 Debian 系统上已安装软件包的列表:
$ apt list –installed $ sudo apt list --installed | less $ apt list
检查任何特定包的详细信息:
$ apt show firefox
计算系统内安装的软件包总数:
$ apt list –installed | wc –l
使用 APT 命令将已安装包的列表导出到文本文件:
$ apt list –installed > packages.txt
最后的话
就是这样,大家,您已经了解了如何使用包管理在您的 Linux 发行版上生成已安装包列表的基本操作概述。 我已经描述了各种 Linux 发行版的 shell 命令的基本原理。 而且,我已经解释了通过命令行界面在 Linux 中列出已安装包的过程。 我应该提到,我已经揭示了为什么我更喜欢命令行界面 (CLI) 方法而不是图形用户界面 (GUI) 方法。
如果您一直在寻找在 Linux 机器上创建已安装软件包列表的指南,我希望这篇文章对您有所帮助和方便。 请与您的朋友和您的 Linux 社区分享。 我们也鼓励您写下您对这篇文章的看法。 请在评论区写下您的评论。