如何在 Linux 中列出按安装日期排序的已安装软件包

本简要指南介绍了如何在 Linux 和类 Unix 操作系统中从命令行列出按安装日期排序的已安装软件包。 这在您想要获取 rpm 软件包更新历史记录时会很有帮助,例如安装软件包的时间、特定日期和时间在您的系统上安装了多少软件包以及您在特定日期或时间安装了哪些软件包Linux盒子。

内容

  1. 在 Linux 中按安装日期列出已安装的软件包
    1. 1. 列出在 Arch Linux 和衍生产品上按安装日期排序的已安装包
    2. 2. 获取 RHEL、CentOS 上的 RPM 包更新历史, Fedora
    3. 3.在Debian、Ubuntu系统上查看包更新历史

在 Linux 中按安装日期列出已安装的软件包

有不同的方法可以按上次安装或更新的日期列出 Linux 系统上的软件包。

1. 列出在 Arch Linux 和衍生产品上按安装日期排序的已安装包

在 Arch Linux 及其衍生产品(如 Manjaro Linux)中,您可以使用以下命令按安装日期排序列出已安装的软件包:

$ expac --timefmt="%Y-%m-%d %T" '%lt%n'|sort -n

我的 Arch Linux 机器的输出示例:

2020-12-15 13:02:09 iana-etc 2020-12-15 13:02:10 filesystem 2020-12-15 13:02:10 linux-api-headers 2020-12-15 13:02:12 tzdata 2020-12-15 13:02:14 glibc 2020-12-15 13:02:17 gcc-libs 2020-12-15 13:02:20 ncurses 2020-12-15 13:02:20 readline 2020-12-15 13:02:21 acl 2020-12-15 13:02:21 attr [...]

列出在 Arch Linux 上按安装日期排序的已安装软件包

上面的命令将列出所有已安装的包,按 Arch Linux 中的安装日期排序。 您还可以使用以下命令列出最后安装的 10 个软件包:

$ expac --timefmt="%Y-%m-%d %T" '%lt%n' | sort | tail -n 10

如果您的 Arch Linux 系统上未安装 expac,请运行以下命令进行安装:

$ sudo pacman -S expac

2. 获取 RHEL、CentOS 上的 RPM 包更新历史, Fedora

在 Fedora, RHEL, 和它的克隆像 CentOS, 运行以下命令 或者 sudo 用户列出已安装的软件包历史记录:

# rpm -qa --last

样本输出来自 Fedora:

gpg-pubkey-9570ff31-5e3006fb Monday 19 October 2020 11:40:17 PM rootfiles-8.1-28.fc33.noarch Monday 19 October 2020 11:37:48 PM fedora-repos-modular-33-1.noarch Monday 19 October 2020 11:37:48 PM tar-1.32-6.fc33.x86_64 Monday 19 October 2020 11:37:47 PM syslinux-extlinux-6.04-0.16.fc33.x86_64 Monday 19 October 2020 11:37:47 PM sudo-1.9.2-1.fc33.x86_64 Monday 19 October 2020 11:37:47 PM rsync-3.2.3-1.fc33.x86_64 Monday 19 October 2020 11:37:47 PM parted-3.3-5.fc33.x86_64 Monday 19 October 2020 11:37:47 PM man-db-2.9.2-6.fc33.x86_64 Monday 19 October 2020 11:37:47 PM hostname-3.23-3.fc33.x86_64 Monday 19 October 2020 11:37:47 PM [...]