218 votes

Est-il possible d'obtenir une liste des paquets les plus récemment installés ?

Est-il possible d'obtenir une liste des paquets qui ont été installés le plus récemment par apt-get ?

245voto

Craig Smitham Points 522

Commande permettant de répertorier les paquets récemment installés qui ont été installés par n'importe quelle méthode ( apt-get Software Center et al.) :

grep " install " /var/log/dpkg.log

Exemple de sortie :

2010-12-08 15:48:14 install python-testtools <none> 0.9.2-1
2010-12-08 15:48:16 install quickly-widgets <none> 10.09
2010-12-08 22:21:31 install libobasis3.3-sdk <none> 3.3.0-17
2010-12-09 12:00:24 install mc <none> 3:4.7.0.6-1
2010-12-09 23:32:06 install oggconvert <none> 0.3.3-1ubuntu1
2010-12-09 23:34:50 install mpg123 <none> 1.12.1-3ubuntu1
2010-12-09 23:34:52 install dir2ogg <none> 0.11.8-1
2010-12-09 23:34:53 install faad <none> 2.7-4
2010-12-09 23:34:54 install wavpack <none> 4.60.1-1
2010-12-10 11:53:00 install playonlinux <none> 3.8.6

Vous pouvez exécuter cette commande pour ne lister que les noms des paquets récemment installés,

awk '$3~/^install$/ {print $4;}' /var/log/dpkg.log

Commande permettant de lister l'historique des apt-get (NOTE : cela ne liste pas les dépendances installées, cela liste simplement les précédentes apt-get les commandes qui ont été exécutées) :

grep " install " /var/log/apt/history.log

Exemple de sortie :

Commandline: apt-get install libindicate-doc
Commandline: apt-get install googlecl
Commandline: apt-get --reinstall install ttf-mscorefonts-installer
Commandline: apt-get install valac libvala-0.10-dev
Commandline: apt-get install libgtksourceview-dev
Commandline: apt-get install python-sphinx
Commandline: apt-get install python-epydoc
Commandline: apt-get install quickly-widgets
Commandline: apt-get install libreoffice3* libobasis3.3*
Commandline: apt-get install mc

18voto

Valentas Points 678

Pour voir également les anciens paquets triés par date d'installation :

grep " install " /var/log/dpkg.log.1 /var/log/dpkg.log

Et pour des paquets installés il y a très longtemps :

gunzip -c `ls -tr /var/log/dpkg.log.*.gz` | grep " install "

16voto

Tim Heuer Points 3795

Le centre logiciel d'Ubuntu affiche l'historique complet de tous les paquets qui ont été installés/mises à jour/supprimés. Il suffit de cliquer sur "Historique" en bas de la liste à gauche.

8voto

Ganesh Points 266

L'astuce suivante répond à la demande d'Aleksandr Dubinsky de limiter cela aux paquets installés manuellement :

comm -12 <(apt-mark showmanual | sort) <(grep " install " /var/log/dpkg.log | cut -d " " -sf4 | grep -o "^[^:]*" | sort)
  • comm -12 liste les lignes communes à deux fichiers triés.
  • <(command) se développe vers le nom d'un fichier contenant la sortie de command .
  • apt-mark showmanual liste les paquets installés manuellement, c'est-à-dire ceux qui ne devraient jamais être supprimés automatiquement.
  • grep " install " /var/log/dpkg.log est extrait de la réponse acceptée.

Une alternative, montrant plus d'informations, par ordre chronologique, et accédant à tous les journaux disponibles, est la suivante :

zcat -f /var/log/dpkg.log* | grep " install " | sort > /tmp/dpkg.log
grep -F "`comm -12 <(apt-mark showmanual | sort) <(cat /tmp/dpkg.log | cut -d " " -sf4 | grep -o "^[^:]*" | sort)`" /tmp/dpkg.log | grep \<none\>

grep \<none\> limite les résultats aux nouvelles installations. Vous pouvez, par exemple, utiliser grep pour limiter la recherche à une période de trois mois en ajoutant grep 2016-0[567] au premier pipeline ; c'est très flexible.

6voto

Serge Stroobandt Points 3924

Tout sur une seule ligne ; pour les commandes

Sélectionner et imprimer seulement les noms des paquets récemment installés, le tout sur une seule ligne.

Pour ce faire, changez la réponse la plus votée en :

cat /var/log/dpkg.log |awk '/ install / {printf "%s ",$4}'

Cela donne une seule ligne de noms de paquets. Une telle ligne peut facilement être ajoutée à un sudo apt-get purge commandement.

Exemple de sortie

libgnome-media-profiles-3.0-0 gstreamer0.10-gconf gnome-media gnome-menus librest-0.7-0 libgoa-1.0-common libgoa-1.0-0 libwacom-common libwacom2 ubuntu-docs apg libgnome-control-center1 libgnomekbd-common libgnomekbd7 gnome-control-center-data gnome-icon-theme-symbolic gnome-settings-daemon ubuntu-system-service gnome-control-center gnome-online-accounts gnome-session-bin indicator-power mousetweaks

Lister les paquets les uns en dessous des autres

À la demande générale, voici une version légèrement adaptée pour lister les paquets les uns en dessous des autres :

cat /var/log/dpkg.log |awk '/ install / {printf "%s\n",$4}'

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X