All pastes #86135 Raw Edit

samyboy

public shellscript v1 · immutable
·published 2006-07-12 16:04 UTC
rendered paste body
#!/bin/bash# delpollu version 0.999## 12 juin 2006 : création# Samuel Krieg skrieg@wng.ch## delpollu supprime les fichiers foireux créés par les explorateurs # des différents systèmes d'exploitations. Finder, Explorer.exe# et Nautilus sont gérés.### si pas d'arguments, on sort# sort si pas d'argumentsif [ -z $1 ]; then   echo "Pas d'argument ..."   echo "<`basename $0` --help> pour plus d'infos"   exit 1 fiVERSION="0.999"LAST_MODIF="12 juin 2006"FIND=$(which find)VERBOSE=0TEST=0PRINT=""CHEMIN=""# affiche la version et quittefunction affiche_version{	echo "delpollu.sh Version $VERSION"	echo "Derniere modification : $LAST_MODIF"}# affiche l'aide et quittefunction affiche_aide{	echo "delpollu.sh version $VERSION"	echo "usage : delpollu.sh [-h] [-v] [-V] [-t] [chemin]"	echo "affichage de l'aide"}# prise en charge des arguments et# définition des variableswhile [ "$1" ]; do   case $1 in   -h | --help)		affiche_aide		exit 0	;;	-v)		VERBOSE=1	;;	-V)		affiche_version		exit 0	;;	-t)		TEST=1	;;	*)		if [ -n "$CHEMIN" ]; then			#déjà initialisée			echo "Un seul chemin svp $CHEMIN est deja utilise."			echo "$1 Ne peut pas etre aussi le chemin."			exit 1		fi		CHEMIN=$1	;;	esac	shiftdone# test de la validité des argumentsif [ ! -d "$CHEMIN" ] && [ ! -L $CHEMIN ] ; then	echo "Le répertoire $CHEMIN n'existe pas."	exit 1fi# verbosePRINT='-fprint /dev/null'if [ $VERBOSE == 1 ]; then	PRINT="-print"fiEXEC=""if [ $TEST -eq 0 ]; then		# hop c'est un tableau ! Magik ! c.f.  http://wooledge.org/mywiki/BashFaq#faq50	# test	# EXEC=(-exec echo A+ : "{}"  res \;);	# for real	EXEC=(-exec rm -rf {} \;);	fi# execution de la commande$FIND $CHEMIN \( \-name ".DS_Store"  -or \-name ".Trashes" -or \-name "._*" -or  \-name ".Trash-*" -or \-name ".TemporaryItems" -or \-name "Thumbs.db" -or \-name "_notes" \\)  $PRINT ${EXEC[@]}