#!/bin/bash ## Script réalisé et mis à jour par Bertrand Perrier le 20/05/08 # Ce script suprime les fichiers et paquet qui ne sont pas nécessaire # 25/03/07 : ajout de la suppression des fichiers ~ dans /home/$USER # 24/06/07 : mise en suspens de AUTOREMOVE, car supprime des paquets pour certains programmes # 20/10/07 : ajout de sudo dpkg --configure -a et sudo apt-get install -f # 28/10/07 : ajout de l'affichage de l'espace économisé fonction df # 28/10/07 : modification dans recherche des fichiers ~ (remplacement de *.*~ par *~ # 17/01/08 : affichage de l'espace libre avant, aprés, et le gain ddr en Mo # 30/01/08 : ajout de la purge des fichiers de configuration inutilisés # 27/04/08 : mise à jour de l'emplacement de la corbeille passe de la version 7.10 à 8.04 # 06/05/08 : ajout du paramètre -path dans la commande de recherche des fichier ~ # 20/05/08 : amelioration de la recherche des fichiers ~ echo "espace libre disques dur" SPACE_FREE_BEFORE=$(df -m /dev/sda1 | awk '/\/dev/ {split($1,sda1,"%");if (sda1[1] < 100) {print $4}}') echo $SPACE_FREE_BEFORE" Mo" read -p "Voulez-vous effectuer une mise à jour (oui/non) ? " ANSWER echo " " if [ $ANSWER = oui ] then echo " " echo "=====MISE A JOUR DE LA LISTE DES PAQUETS=====" echo " " sudo apt-get update sudo apt-get dist-upgrade fi echo " " echo "=====CLEAN=====" echo " " sudo apt-get clean echo " " echo "=====AUTOREMOVE=====" echo " " sudo apt-get autoremove echo " " echo "=====AUTOCLEAN=====" echo " " sudo apt-get autoclean echo " " echo "=====FICHIER ~ =====" echo " " echo "recherche en cours ..." echo " " echo "tapez \"yes\" pour déplacer dans la corbeille" echo " ou \"no\" pour garder" echo "" ## cherche dans les dossier finissant par tilde find $HOME -name "*~" -a ! -path "$HOME/.local/share/Trash*" -ok mv {} ~/.local/share/Trash/files/ \; find /var/www/ -name "*~" -a ! -ok mv {} ~/.local/share/Trash/files/ \; echo " " echo "fin de la recherche" echo " " echo "=====CORBEILLE/TRASH=====" echo " " echo "=====CONTENU DE LA CORBEILLE====" echo " " ls -a /home/$USER/.local/share/Trash/files echo " " read -p "voulez-vous vider la corbeille ? (oui/non) ? " ANSWER echo " " if [ $ANSWER = oui ] then echo " " echo "=====VIDAGE DE LA CORBEILLE=====" echo " " sudo rm -r /home/$USER/.local/share/Trash/files/** sudo rm -r /home/$USER/.local/share/Trash/info/** echo " " read -p "voulez-vous supprimer les répertoires et fichiers cachés ? (oui/non) ? " ERASE_HIDE echo " " if [ $ERASE_HIDE = oui ] then sudo rm -r -f ~/.local/share/Trash/files/.* sudo rm -r -f ~/.local/share/Trash/info/.* fi fi ## supprime ou purge tous les paquets non dépaquetés, mais qui sont marqués comme devant être supprimés ou purgés echo " " read -p "voulez-vous supprimer/purger les paquets non dépaquetés, marqués comme devant être supprimés ou purgés ? (oui/non) ? " ANSWER echo " " if [ $ANSWER = oui ] then echo " " echo "=====sudo dpkg --configure -a=====" echo " " sudo dpkg --configure -a fi ## purge les fichiers de configuration inutilisés echo " " read -p "voulez-vous purger les fichiers de configuration inutilisés ? (oui/non) ? " ANSWER echo " " if [ $ANSWER = oui ] then if [ $(COLUMNS=200 dpkg -l | grep "^rc" | tr -s ' ' | cut -d ' ' -f 2) ] then echo " " echo "=====sudo dpkg --purge...=====" echo " " sudo dpkg --purge $(COLUMNS=200 dpkg -l | grep "^rc" | tr -s ' ' | cut -d ' ' -f 2) else echo " " echo "pas de fichier à purger" echo " " fi fi ## essaye de réparer un système dont les dépendances sont défectueuses echo " " echo "voulez-vous réparer les dépendances de paquet" read -p "(cette opération peut prendre quelque dixaine de minute) ? (oui/non) ? " ANSWER echo " " if [ $ANSWER = oui ] then echo " " echo "=====sudo apt-get install -f=====" echo " " sudo apt-get install -f fi echo "espace libre disques dur" SPACE_FREE_AFTER=$(df -m /dev/sda1 | awk '/\/dev/ {split($1,sda1,"%");if (sda1[1] < 100) {print $4}}') echo $SPACE_FREE_AFTER" Mo" SPACE_FREE_WIN=$((SPACE_FREE_AFTER-SPACE_FREE_BEFORE)) echo " " echo "espace gagné" echo $SPACE_FREE_WIN" Mo" read -p " *** Appuyer sur un touche pour quitter ***" ANSWER