Subversion Repositories eFlore/Projets.communes

Rev

Rev 21 | Blame | Compare with Previous | Last modification | View Log | RSS feed

#/bin/bash
########################################################################################################################
# But : renvoyer les fichiers "Incomplets" sans les regénérer
# Auteur :  Jean-Pascal Milcent <jpm@clapas.org> (translate bat file to shell script)
# License : GPL v3
# Création : 08 avril 2013
# Version: 0.1
# $Id$
########################################################################################################################
# Constante
NBREPARAM=$#
DOSSIER_DEPOT="/home/jpm/Documents/Cartographie/Communes/Incomplet/"
DOSSIER_TELECHARGEMENT="${DOSSIER_DEPOT}Telechargements/"
DOSSIER_EXTRACTION="${DOSSIER_DEPOT}Extraction"
DOSSIER_LOCAL_KML="${DOSSIER_DEPOT}Kml"
DOSSIER_LOCAL_KMZ="${DOSSIER_DEPOT}Kmz"
DOSSIER_DESTINATION_KML="/www/carto/kml/communes_incompletes"
DOSSIER_DESTINATION_KMZ="/www/carto/kmz/communes_incompletes"
EXT="*.shp.tar.gz"

# Aide
E_OPTERR=65
if [ "$1" = '--help' ]
then # Le script a besoin d'au moins un argument sur la ligne de commande
    echo "Usage $0 -[parameters -u, -p ]"
    echo "Paramètres : "
    echo "  -h: indiquer l'hote ftp"
    echo "  -u: indiquer le nom de l'utilisateur ftp"
    echo "  -p: indiquer le mot de passe de l'utilisateur ftp"
    exit $E_OPTERR
fi

# Récupération des paramètres et des options de la ligne de commande
TEMP=`getopt -o u:p:h: -l help: -- "$@"`
if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
eval set -- "$TEMP"
while [ ! -z "$1" ] ; do
    #echo $1" # "$2
    case "$1" in
        -h) HOST=$2;;
        -u) FTP_USER=$2;;
        -p) FTP_PASSWD=$2;;
        --) shift ; break ;;
        *) echo "Internal error!" ; exit 1 ;;
    esac
    shift 2
done

rm -fR $DOSSIER_LOCAL_KML
mkdir $DOSSIER_LOCAL_KML
rm -fR $DOSSIER_LOCAL_KMZ
mkdir $DOSSIER_LOCAL_KMZ

for dossier in $DOSSIER_EXTRACTION/*; do
        #dossier="${DOSSIER_EXTRACTION}01-Ain"
        if [ -d $dossier ]; then
                nom_dpt=`basename $dossier`
                echo "Dossier : $nom_dpt";
                fichier_kml="$dossier/${nom_dpt}.kml"
                fichier_shp="$dossier/${nom_dpt}.shp"
                #echo "Nom dpt : $nom_dpt";
                for fichier in $dossier/*; do
                        if [ -f $fichier ]; then
                                if [[ "$fichier" != "$fichier_kml" && $fichier == *.kml ]]; then
                                        cp $fichier $DOSSIER_LOCAL_KML
                                        nom_kml=`basename $fichier .kml`
                                        fichier_kmz="${dossier}/${nom_kml}.kmz"
                                        echo "KMZ : $fichier_kmz";
                                        zip -j9 -r $fichier_kmz $fichier
                                        mv $fichier_kmz $DOSSIER_LOCAL_KMZ
                                fi
                        fi
                done
        fi
done

if [ $NBREPARAM -eq 0 ]; then
        echo "Pas de transfert sur le serveur. Utiliser --help pour voir les options de transfert."
else
        lftp ftp://$FTP_USER:$FTP_PASSWD@$HOST -e "set ftp:passive off; mirror -e -R -L -x .svn -x .htaccess -x index.php $DOSSIER_LOCAL_KML $DOSSIER_DESTINATION_KML ; quit"
        lftp ftp://$FTP_USER:$FTP_PASSWD@$HOST -e "set ftp:passive off; mirror -e -R -L -x .svn -x .htaccess -x index.php $DOSSIER_LOCAL_KMZ $DOSSIER_DESTINATION_KMZ ; quit"
fi