| 650 | jp_milcent | 1 | #!/bin/bash
 | 
        
           |  |  | 2 | ###############################################################################
 | 
        
           |  |  | 3 | # But : Met à jour la base de données Coel.
 | 
        
           |  |  | 4 | # Auteur :  Jean-Pascal Milcent <jpm@tela-botanica.org> (translate bat file to shell script)
 | 
        
           |  |  | 5 | # License : GPL v3
 | 
        
           |  |  | 6 | # Création : 01 octobre 2009
 | 
        
           |  |  | 7 | # Version: 0.1
 | 
        
           |  |  | 8 | # $Id$
 | 
        
           |  |  | 9 | ###############################################################################
 | 
        
           |  |  | 10 | # Constante
 | 
        
           |  |  | 11 | NBREPARAM=$#
 | 
        
           |  |  | 12 |   | 
        
           |  |  | 13 | # Aide
 | 
        
           |  |  | 14 | E_OPTERR=65
 | 
        
           |  |  | 15 | if [ "$1" = '--help' ]
 | 
        
           |  |  | 16 | then # Le script a besoin d'au moins un argument sur la ligne de commande
 | 
        
           |  |  | 17 | 	echo "Usage $0 -[parameters -u, -p]"
 | 
        
           |  |  | 18 | 	echo "Paramétres obligatoires : "
 | 
        
           |  |  | 19 | 	echo "	-u: indiquer le nom de l'utilisateur mysql"
 | 
        
           |  |  | 20 | 	echo "	-p: indiquer le mot de passe de l'utilisateur mysql (utiliser les guillemets \"\" pour un mot de passe vide)"
 | 
        
           |  |  | 21 | 	exit $E_OPTERR
 | 
        
           |  |  | 22 | fi
 | 
        
           |  |  | 23 |   | 
        
           |  |  | 24 | # Récupération des paramètres et des options de la ligne de commande
 | 
        
           |  |  | 25 | TEMP=`getopt -o u:p:h: -l help: -- "$@"`
 | 
        
           |  |  | 26 | if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
 | 
        
           |  |  | 27 | eval set -- "$TEMP"
 | 
        
           |  |  | 28 | while [ ! -z "$1" ] ; do
 | 
        
           |  |  | 29 | 	#echo $1" # "$2
 | 
        
           |  |  | 30 | 	case "$1" in
 | 
        
           |  |  | 31 | 		-h) HOST=$2;;
 | 
        
           |  |  | 32 | 		-u) MYSQL_USER=$2;;
 | 
        
           |  |  | 33 | 		-p) MYSQL_PASSWD=$2;;
 | 
        
           |  |  | 34 | 		--) shift ; break ;;
 | 
        
           |  |  | 35 | 		*) echo "Internal error!" ; exit 1 ;;
 | 
        
           |  |  | 36 | 	esac
 | 
        
           |  |  | 37 | 	shift 2
 | 
        
           |  |  | 38 | done
 | 
        
           |  |  | 39 | # Vérifions que nous avions bien le mot de passe et l'utilisateur mysql
 | 
        
           |  |  | 40 | if [ $NBREPARAM -ne 4 ]; then
 | 
        
           |  |  | 41 | 	echo "Paramètres requis, utiliser la commande pour voir lesquels : coel.sh --help."
 | 
        
           |  |  | 42 | else
 | 
        
           |  |  | 43 | 	# Nous devons être dans le dossier de ce script pour que tout fonctionne
 | 
        
           |  |  | 44 | 	echo "Vérifions que le fichier sql de l'application Coel existe : ";
 | 
        
           |  |  | 45 | 	if [ -f $PWD/coel.sql.bz2 ]; then
 | 
        
           | 1010 | jpm | 46 | 		echo "OK";
 | 
        
           | 650 | jp_milcent | 47 | 		echo "Mise à jour de la bdd COEL dans Mysql :";
 | 
        
           |  |  | 48 | 		bunzip2 $PWD/coel.sql.bz2
 | 
        
           |  |  | 49 | 		/opt/lampp/bin/mysql -u $MYSQL_USER -p$MYSQL_PASSWD --default-character-set=utf8 --database=tb_coel < $PWD/coel.sql
 | 
        
           |  |  | 50 | 		bzip2 -q $PWD/coel.sql
 | 
        
           |  |  | 51 | 	else
 | 
        
           | 1010 | jpm | 52 | 		echo "Le fichier coel.sql.bz2 n'existe pas. Veuillez mettre à jour votre dépôt SVN et relancer ce script."
 | 
        
           | 650 | jp_milcent | 53 | 	fi
 | 
        
           |  |  | 54 | fi
 |