当你安装了 Ubuntu 并想好好用一用。但在将来某个时候,你肯定会遇到忘记曾经安装了那些软件包。
这个是完全正常。没有人要求你把系统里所有已安装的软件包都记住。但是问题是,如何才能知道已经安装了哪些软件包?如何查看安装过的软件包呢?
列出 Ubuntu 和 Debian 上已安装的软件包
如果你经常用 apt 命令,你可能觉得会有个命令像 apt 一样可以列出已安装的软件包。不算全错。
apt-get 命令 没有类似列出已安装软件包的简单的选项,但是 apt 有一个这样的命令:
apt list --installed
这个会显示使用 apt 命令安装的所有的软件包。同时也会包含由于依赖而被安装的软件包。也就是说不仅会包含你曾经安装的程序,而且会包含大量库文件和间接安装的软件包。
用 atp 命令列出显示已安装的软件包
由于列出出来的已安装的软件包太多,用 grep 过滤特定的软件包是一个比较好的办法。
apt list --installed | grep program_name
如上命令也可以检索出使用 .deb 软件包文件安装的软件。是不是很酷?
如果你阅读过 apt 与 apt-get 对比的文章,你可能已经知道 apt 和 apt-get 命令都是基于 dpkg。也就是说用 dpkg 命令可以列出 Debian 系统的所有已经安装的软件包。
dpkg-query -l
你可以用 grep 命令检索指定的软件包。
用 dpkg 命令列出显示已经安装的软件包
现在你可以搞定列出 Debian 的软件包管理器安装的应用了。那 Snap 和 Flatpak 这个两种应用呢?如何列出它们?因为它们不能被 apt 和 dpkg 访问。
显示系统里所有已经安装的 Snap 软件包,可以这个命令:
snap list
Snap 可以用绿色勾号标出哪个应用来自经过认证的发布者。
列出已经安装的 Snap 软件包
显示系统里所有已安装的 Flatpak 软件包,可以用这个命令:
flatpak list
让我来个汇总:
用 apt 命令显示已安装软件包:
apt list –installed
用 dpkg 命令显示已安装软件包:
dpkg-query -l
列出系统里 Snap 已安装软件包:
snap list
列出系统里 Flatpak 已安装软件包:
flatpak list
显示最近安装的软件包
现在你已经看过以字母顺序列出的已经安装软件包了。如何显示最近已经安装的软件包?
幸运的是,Linux 系统保存了所有发生事件的日志。你可以参考最近安装软件包的日志。
有两个方法可以来做。用 dpkg 命令的日志或者 apt 命令的日志。
你仅仅需要用 grep 命令过滤已经安装的软件包日志。
grep " install " /var/log/dpkg.log
这会显示所有的软件安装包,其中包括最近安装的过程中所依赖的软件包。
2019-02-12 12:41:42 install ubuntu-make:all 16.11.1ubuntu1 2019-02-13 21:03:02 install xdg-desktop-portal:amd64 0.11-1 2019-02-13 21:03:02 install libostree-1-1:amd64 2018.8-0ubuntu0.1 2019-02-13 21:03:02 install flatpak:amd64 1.0.6-0ubuntu0.1 2019-02-13 21:03:02 install xdg-desktop-portal-gtk:amd64 0.11-1 2019-02-14 11:49:10 install qml-module-qtquick-window2:amd64 5.9.5-0ubuntu1.1 2019-02-14 11:49:10 install qml-module-qtquick2:amd64 5.9.5-0ubuntu1.1 2019-02-14 11:49:10 install qml-module-qtgraphicaleffects:amd64 5.9.5-0ubuntu1
(编辑:ASP站长网)
|