Le script delete
Transcription
Le script delete
delete Dec 19, 01 22:18 Page 1/1 #!/bin/bash # ########################################################################### # Commande delete # Effectue une sauvegarde du fichier dans une poubelle # avant de le supprimer. #Definition des variables TRASH="$HOME/.Trash" #Emplacement de la poubelle function usage { echo −e "\nLa commande \"delete\" sauve le fichier avant de le supprimer" echo −e "\t delete [−h] f" echo −e "\t ou −h affiche ce message" echo −e "\t et f est le fichier à supprimer" return 0 } while getopts ":h" OPT do case $OPT in h) usage exit 1;; ?) echo "Erreur de syntaxe !!!" usage exit 1;; esac done shift $(($OPTIND−1)) # Verification si il y a au moins un argument if [ "$#" −lt "1" ] then echo "Erreur de syntaxe !!!" usage exit 1 fi #verification si le repertoire .Trash existe if [ ! −e $TRASH ] then mkdir $TRASH #creation du repertoire poubelle fi #Nous traitons chaque argument de la ligne de commande for ARG in $* do #Nous recuperons le nom seul NAME=‘basename $ARG‘ #Nous recuperons le chemin seul FULLPATH=‘dirname $ARG‘ if [ "$FULLPATH" = "." ] then FULLPATH=‘pwd‘ fi #On verifie si la poubelle contient deja ce nom de fichier if [ −e $TRASH/$NAME ] then echo "Il existe deja un fichier $ARG dans la poubelle" continue #on passe à l’argument suivant else #on verifie si le fichier donne sur la ligne de commande #existe if [ −e $ARG ] then echo "$FULLPATH/$NAME" > $TRASH/$NAME.info mv $ARG $TRASH echo "$ARG a ete poubellise..." else echo "$ARG n’existe pas" fi fi done exit 0 Thursday December 20, 2001 1/1