как урезать список обновленных пакетов dpkg

Убедитесь, что у вас есть правильный драйвер. Иногда вам нужен запасной дополнительный драйвер, чтобы он работал правильно. Дополнительная информация о ноутбуке и сетевой карте была бы полезной при поиске решения.

1
задан 15 March 2014 в 16:50

1 ответ

Проблема с использованием grep для начального поиска заключается в том, что в него входят такие вещи, как ubuntu-release-upgrader-core:all.

awk '$3=="upgrade" { print $4 }' /var/log/dpkg.log

По умолчанию awk разбивает каждую строку на основе пробелов. Третье поле - это действие (поэтому мы проверяем, что оно равно «upgrade»), а четвертое - это имя пакета.

Некоторые пакеты обновляются много, поэтому вы можете вырезать шум дубликатов с помощью: [ ! d2]

awk '$3=="upgrade" { print $4 }' /var/log/dpkg.log | sort -u

Я уже видел ответ Avinash ... Я бы немного осторожно отрезал архитектуру ... В зависимости от того, что вы делаете, они могли бы быть таким же релевантным, как имя пакета ... Но если бы вы захотели их вырезать, я бы, вероятно, сделал это в одном и том же предложении awk:

awk '$3=="upgrade" { split($4, a, ":"); print a[1] }' /var/log/dpkg.log | sort -u

В качестве альтернативы вы могли бы установить несколько разделители полей для awk, так что он разбивается либо на пробелы, либо на двоеточия:

awk -F'[ :]' '$5=="upgrade" { print $6 }' /var/log/dpkg.log
3
ответ дан 24 May 2018 в 10:46

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

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