#!/bin/sh
#
# Purger les fichiers temporaires (se finissant par ~).
# BoboTiG - 18 août 2010
#
# Usage : ./purge-tildes [-f]
#


# Options
set -u -e

# Variables
pers=$(whoami)
id=$(date +"%s")
tmp="/tmp/purge-tildes_"${id}".tmp"
i=0
total=0
auto=0
maron="\033[33;03m"
normal="\033[0m"

# C'est parti !
if [ "$@" ]; then
	case "$@" in
		"-f" )
			echo "[*] Suppression automatique."
			auto=1
		;;
	esac
fi
case ${pers} in
	"root" )
		echo "[-] Vérification de tout le système en cours..."
		find / -ignore_readdir_race -type f -name "*~" | sed "s/\ /\\\ /g" > ${tmp}
	;;
	* )
		echo "[-] Vérification de tes fichiers en cours..."
		find /mnt /home/${pers} -ignore_readdir_race -type f -name "*~" -print | sed "s/\ /\\\ /g" > ${tmp}
	;;
esac
total=$(wc -l ${tmp} | cut -d" " -f1)
case ${total} in
	0 ) echo "[-] Nikel, aucun fichier n'a été trouvé !" ;;
	* )
		echo "[+]" ${total} "fichiers trouvés."
		echo ""
		echo "Voici la liste :"${maron}
		cat ${tmp} | sed "s/\\\ /\ /g"
		echo ${normal}
		if [ ${auto} -eq 0 ]; then
			echo -n "[-] Procéder à la suppression (o,y|N) ? "
			read reponse
			case ${reponse} in
				"o" | "O" | "y" | "Y" | 1 )
					xargs rm -f < ${tmp}
				;;
				*)
					echo "[!] Operation annulée."
					exit 1
				;;
			esac
		else
			xargs rm -f < ${tmp}
		fi
		echo "[-] Nettoyage..."
		rm -f ${tmp}
		echo "[-] Purgation terminée."
	;;
esac
exit 0

