Сравнение списков пакетов
Сегодня я сделал новую установку Ubuntu 18.04. Я был раньше на выпуске 16.10. Я следовал инструкциям на этой странице французской документации: https://doc.ubuntu-fr.org/tutoriel/comment_sauver_et_restaurer_la_liste_des_paquets.
Моя цель - восстановить все мои предыдущие пакеты в этом новом выпуске. Я в замешательстве, так как я хотел бы восстановить только те пакеты, которые я установил вручную, а не те, что были добавлены в Ubuntu 16.10, или в новой установке (минимальная установка) от 18.04.
Я попытался сравнить список пакетов, которые я сохранил перед установкой, с файлом ubuntu-16.10-desktop-amd64.manifest, используя команды diff & cmp. Я получил файл манифеста здесь: http://old-releases.ubuntu.com/releases/yakkety/
Я получил список пакетов с cmd:
dpkg --get-selections > liste-des-paquets_`hostname`_`date +%Y-%m-%d-%H-%M`
Итак, мои вопросы:
- Нужно ли сравнивать оба файла манифеста 18.04 и 16.10?
- Какой самый простой способ сравнить файлы и удалить плохие записи?
Я благодарю вас за вашу помощь.
РЕДАКТИРОВАТЬ: Один прогресс к решению, которое я понял, состоит в том, чтобы составить список реальных пакетов и сравнить их с diff со списком старых пакетов.
diff -yb --suppress-common-lines new_list_of_package_name old_list_of_package | grep -e ">" > change-to-add
Затем:
cut -d ">" -f 2 change-to-add | cut -c 2-
Таким образом, я получаю список со всеми строками, которые мне потенциально нужны для сортировки. Мне все еще нужно сравнить список с файлом манифеста, поэтому я не добавляю старые ядра Linux, которые мне не нужны.