如何在 Linux 上列出已安装的软件包
已发表: 2022-07-19
拥有数以千计的免费 Linux 应用程序,很容易忘记您曾经安装但不再使用的内容。 以下是列出主要 Linux 系列上已安装应用程序的方法。
应用墓地
可供 Linux 用户使用的免费和开源应用程序的选择令人惊讶。 对于 Linux 的新手来说,这可能会让人不知所措。 但这也是乐趣的一部分。 如果您有特殊需求,您可以搜索一款软件来满足该需求。 如果你不和你找到的那个人相处,那没问题。 可能还有几十个你可以尝试,直到你找到一个能满足你所有条件的那个。
如果您不谨慎地卸载那些您知道不会使用的软件,它们就会在您的系统中占用硬盘空间。 如果您是一名程序员,您的计算机周围还会有一些未使用的工具包和库。 在台式计算机上,使用当今相当便宜的大容量驱动器,这本身可能不是什么大问题。 在笔记本电脑上,由于存储容量较小,因此更值得关注。
但是,无论您是否有多余的硬盘空间,囤积未使用的软件都意味着软件更新将需要更长的时间,因为您正在更新所有未使用的应用程序以及您实际使用的应用程序。 系统映像和其他备份将比必要的更大,需要更长的时间才能完成,并且会消耗更多的备份媒体。
已安装和被遗忘的应用程序的组件与您尝试安装的新应用程序的组件之间也可能不兼容。
为了管理这种情况,显而易见的第一步是找出安装了什么。 一旦你知道了什么,你就可以查看列表并决定哪些保留,哪些继续。 您如何找出已安装的内容因 Linux 发行版而异。 RedHat 派生的发行版使用dnf
包管理器,Debian 派生的发行版使用apt
,而基于 Arch 的发行版使用pacman
。
我们还需要考虑其他与分发无关的安装方法,例如snap
和flatpak
。
使用 dnf 列出已安装的应用程序
Fedora 是最成功的源自 RedHat 的桌面发行版。 我们将使用它来讨论使用dnf
包管理器列出已安装的应用程序。
列出已安装的软件包非常简单。
已安装 dnf 列表
这会产生大量信息。
要查看列出了多少包,我们可以使用-l
(行)选项通过wc
传递输出。
这告诉我们dnf
找到了 1,968 个已安装的软件包。 为了使输出更易于管理,您可以将其通过管道传输到grep
中,然后搜索感兴趣的包。
dnf 列表已安装 | grep 终端
您还可以将输出通过管道传输到less
中,并在less
中使用搜索功能来查找您要查找的内容。
如果您在列表中看到想要了解更多信息的软件包(如果您正在考虑删除它,这是一个好主意),您可以使用dnf info
命令。
您需要提供包的名称而不提供平台架构详细信息。 例如,要查看“gnome-terminal.x86_64”包的详细信息,您可以输入:
dnf 信息 gnome 终端
相关: Fedora 36 的新功能
使用 apt 列出已安装的应用程序
apt
命令是旧的apt-get
命令的替代品。 它是 Debian 发行版的命令行工具,许多发行版都是从它衍生出来的,例如整个 Ubuntu 发行版系列。
要查看已安装软件包的列表,请使用以下命令:
apt list --已安装
正如预期的那样,输出很长并且很快滚动过去。
要查看有多少条目,我们可以像以前一样通过管道传递wc
。
apt 列表--已安装 | wc -l
要查找感兴趣的包,我们可以使用grep
和我们感兴趣的名称或主题的一部分。
apt 列表--已安装 | grep xfonts

要调查单个包,请使用带有包名的apt show
命令。
apt show xml-core
相关: apt 与 apt-get:Linux 有什么区别?
使用 pacman 列出已安装的应用程序
pacman
包管理器用于 Arch Linux 及其衍生产品,例如 Manjaro 和 EndeavourOS。 要使用pacman
列出软件包,我们需要使用-Q
(查询)选项。
吃豆人-Q
软件包列表显示在终端窗口中。
由于未满足的依赖关系,安装单个应用程序可能会导致安装多个包。 如果应用程序需要一个特定的库并且它不存在于您的计算机上,安装将提供它。 同样,卸载应用程序可能会导致删除多个包。 所以申请的数量和包裹的数量是不一样的。
要计算已安装的软件包,我们通过wc
管道输出并使用-l
(行)选项,如前所述。
吃豆人-Q | wc -l
-i
(info) 选项让我们查看包的详细信息。
pacman -Qi bash
两次添加-i
选项可以提供更多信息(如果有的话)。
pacman -Qii bash
在这种情况下,列表底部有一些额外的行显示“.bash_profile”和“.bash_logout”模板文件的位置。
相关:为什么我从 Ubuntu 切换到 Manjaro Linux
使用 flatpak 列出已安装的应用程序
有一些方法可以安装与分发无关的应用程序。 它们被设计为通用包管理器。 他们安装沙盒版本的应用程序,包括他们拥有的任何依赖项。 这使得安装不同版本的应用程序变得容易,而不必担心版本之间的不兼容或交叉污染。
从软件开发人员的角度来看,使用通用包管理器意味着他们只需将应用程序打包一次,并且涵盖了所有发行版。
flatpak
系统是两个最流行的通用安装程序之一。 如果您在计算机上使用flatpak
,您仍然可以列出已安装的应用程序。
扁平化清单
这列出了已安装的应用程序和已安装的相关运行时以满足这些应用程序的依赖关系。 要仅查看应用程序,请添加--app
选项。
flatpak 列表 --app
要查看单个应用程序的详细信息,请使用info
命令和包的应用程序 ID ,而不是应用程序名称。
flatpak 信息 org.blender.Blender
使用 snap 列出已安装的应用程序
另一个流行的通用包管理器称为snap
。 这是一个规范的倡议。 在最近的 Ubuntu 版本的 Ubuntu 软件应用程序中默认使用它,并且snap
也可以安装在其他发行版上。
要列出已使用snap
安装的应用程序,请使用此命令。
快照列表
要查看单个应用程序的详细信息,请使用 snap info 命令和应用程序的名称。
快照信息火狐
相关:如何在 Linux 上使用 Snap 包
做出明智的决定
dnf
、 apt
和pacman
具有自动查找和删除孤立和不需要的包的选项。 但是他们不会找到您不再使用的旧软件包。 这需要人工干预以及需要卸载的知识。 这就是这些方便的命令发挥作用的地方。
清理空间后,您可能有兴趣了解如何在 Linux 设备上安装 Android 应用程序。