apt-get подсчитывает количество доступных обновлений

В настоящее время я использую это для подсчета количества доступных обновлений

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

Есть ли способ сделать то же самое с apt (не aptitude), но без использования уведомления-обновления?

11
задан 18 March 2013 в 21:21

4 ответа

Вы можете использовать apt-get -s, чтобы смоделировать процесс обновления и извлечь только количество обновленных пакетов на

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

. В результате будет получено только количество пакетов

.
0
ответ дан 18 March 2013 в 21:21

Я просто запускаю команду:

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.

0
ответ дан 18 March 2013 в 21:21

Вы можете использовать apt-check из update-notifier-common:

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

Это тот же инструмент, который обновляет сообщение motd.

0
ответ дан 18 March 2013 в 21:21

Я полагаю, что самый быстрый метод показан в 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
1
ответ дан 13 February 2020 в 21:58

Другие вопросы по тегам:

Похожие вопросы: