Re: [SSFR] Concernant la nouvelle liste de diffusion

[ Thread Index | Date Index | More debianworld.org/shellscript-fr Archives ]


Re

Bruno Bonfils a écrit :
[couic]
> 
> 
> euh oui, je suis prêt, à une crontab ou deux près, et le backup mais qui
> va arriver (et d'ailleurs je ne suis pas contre un autre FTP ou poser un
> fichier de quelques MB)

Et pourquoi pas une boite `a lettre gratos ou on envoie un fichier
TAR/CPIO/DUMP/ZIP/.... saucisson'e en petite pieces jointes. Ces
gens l`a ont une politique de sauvegarde bien sup'erieure `a ce que
bon nombre d'entre nous peuvent offrir. Voil`a-t-y pas une bonne id'ee
de script pour se mettre en forme `a l'ap'eritif ?

Au passage, un tel produit existe pour winchose non ? Je veux dire un
truc qui fait prendre une BAL pour un disque...


	Christophe


....
.....
........
................
.....................
#! /bin/sh

# utilisation :
# [TAILLEMAX=n[km]] [TEMPDIR=/un/rep/temp] maildecoupe dest-email [fichier...]
# split(1) les fichiers et les envoie par mail a l'adresse dest-email
#

# Variable d'environnement de configuration
: ${TAILLEMAX:=500k}
: ${TEMPDIR:=/tmp}

# besoin
# commande : mime-construct, split
# systeme de mail configur'e

#
# C'est bidon mais c,a ca evite d'oublier de mettre une adresse
bon_email_p() {
	case "$1" in
	*@*.*)
		:
	;;
	*)
		printf 'Mauvaise adresse email : --|%s|--\n' "$1" >&2
		return 1
	;;
	esac
}


#
# INITIALISATION
#
IFS=' 	
'
nomprog=${0##*/}
reptemp="$TEMPDIR/$nomprog.$$.$RANDOM"
mkdir  "$reptemp"
trap 'rm -rf "$reptemp"' ERR
trap 'rm -rf "$reptemp"' EXIT


#
# principal PRINCIPAL Principal
#
set -e
email="$1"
bon_email_p "$1"
shift
for i
do
	split -b $TAILLEMAX "$i" "$reptemp/${i##*/}."
	(
		cd "$reptemp"
		k=1
		for j in "${i##*/}."*
		do
			ks=$( printf %05d $k )
			mime-construct --prelude '
Ceci est un message MIME. Veuillez changer de lecteur de courrier.
This is a mime message. Change your outdated mail reader
' \
			--to "$email" \
			--subject "$ks.${i}" \
			--attachment "$ks.${i##*/}" \
			--type application/octet-stream \
			--file "$j"
			k=$(( k + 1 ))
			rm "$j"
			#
			# Toujours etre gentil avec un systeme de mail
			#
			sleep 1
		done
	)
done


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/