apt-get 统计可用更新的数量

apt-get 统计可用更新的数量

目前我用它来计算可用更新的数量

NUMOFUPDATES=$(aptitude search "~U" | wc -l)

有没有办法使用 apt(不是 aptitude)执行相同操作但不使用 update-notifier?

答案1

您可以apt-check使用update-notifier-common

$ /usr/lib/update-notifier/apt-check --human-readable
0 packages can be updated.
0 updates are security updates.

这与更新消息的工具相同motd

答案2

我认为最快的方法如 apticron 所示:

https://salsa.debian.org/debian/apticron/blob/master/apticron#L121-154

这可以概括为:

apt-get -q -y --ignore-hold --allow-change-held-packages --allow-unauthenticated -s dist-upgrade | /bin/grep  ^Inst | wc -l

答案3

您可以使用apt-get -s模拟升级过程并仅提取升级的软件包数量

LANG=C apt-get upgrade -s |grep -P '^\d+ upgraded'|cut -d" " -f1

这将导致仅软件包数量

答案4

我只需运行命令:

sudo apt-get update && sudo apt-get upgrade

执行更新过程后,它会给出upgrade命令的输出:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  wine1.5 wine1.5-i386
2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 24.1 MB of archives.
After this operation, 286 kB of additional disk space will be used.
Do you want to continue [Y/n]?

第 6 行提到有 2 个升级可用,第 5 行列出了可升级的软件包。如果我当时不想安装升级,我会按n并继续。

直接而简单。

注意:如果还有可用的内核更新,它会将其显示为<x> not upgraded

相关内容