web-dev-qa-db-fra.com

Comment peut-on supprimer tous les paquets installés après une date / heure donnée?

Le 9 novembre, j'ai essayé d'installer la dernière version stable de BasKet Note Pads, qui n'est apparemment pas prise en charge dès le départ, car elle doit être transférée sur QT4 et KDE 4, peu importe ce que cela signifie. Le programme a été porté, mais depuis 2010, il est en phase bêta, ce qui signifie qu’il est fondamentalement bogué et qu’il manque les fonctionnalités dont j’ai besoin.

En tant que tel, j'ai essayé d'installer BasKet v1.x qui nécessitait QT3 et bien d'autres choses que je ne connais pas bien. J'ai essayé de les installer et j'ai fini par remplir 20% de mon disque dur de 15 Go. Bien sûr, je n'ai jamais obtenu le bon fonctionnement de BasKet, mais les paquetages que j'ai installés sont toujours là et je dois maintenant désinstaller efficacement tout ce que j'ai installé ce jour-là.

Existe-t-il une commande permettant de désinstaller tous les packages installés à une date donnée (dans mon cas, le 9 novembre)?

6
user1841330

Date spécifique %d-%m-%d remplacer ici,

grep "2015-12-19.*.install " /var/log/dpkg.log | awk '{ print $4 }' | cut -d: -f1

Vous obtenez une liste de paquets,

libck-connector0
libgssrpc4
libkadm5clnt-mit9
libkdb5-7
libkadm5srv-mit9
libgnutlsxx27
....
....

Ajoutez-les à la liste des arguments de la commande Apt avec xargs:

grep "2015-12-19.*.install " /var/log/dpkg.log | awk '{ print $4 }' | cut -d: -f1 | xargs Sudo apt-get purge
3
Jay Patel

Si vous connaissez les dates auxquelles vous avez installé ces paquets, le meilleur moyen que j'ai trouvé de les supprimer automatiquement est la commande ci-dessous:

grep "2015-12-19.*.install " /var/log/dpkg.log | awk '{ print $4 }' | cut -d: -f1 

Ce qui précède liste tous les packages installés à la date indiquée dans la commande. La commande finale est:

grep "2015-12-19.*.install " /var/log/dpkg.log | awk '{ print $4 }' | cut -d: -f1 | Sudo apt-get remove -y

Remplacez la date par vos besoins et vous devriez être prêt à partir!

2
Tragaknight

Vous pouvez voir quels paquets vous avez installés dans l'ordre chronologique en faisant:

grep install /var/log/dpkg.log

(les dernières entrées seront les plus récentes)

Sur la gauche, vous pouvez trouver la date et l'heure d'installation.

Choisissez ce que vous souhaitez désinstaller et faire

Sudo apt-get remove package-name

De plus, comme vous avez un petit disque dur, je vous recommande de supprimer de votre disque les paquetages Deb utilisés pour l'installation des programmes:

Sudo apt-get clean

Cela supprimera les fichiers deb de /var/cache/apt/archives/

1
hytromo