Subversion Repositories eFlore/Projets.communes

Compare Revisions

No changes between revisions

Ignore whitespace Rev 11 → Rev 12

/branches/v0.1-y/communeShp2kmlIncomplet.sh
New file
0,0 → 1,98
#/bin/bash
########################################################################################################################
# But : mise en ligne automatique sur le serveur par ftp, des derniers contour de communes d'OSM au format KMZ
# Auteur : Jean-Pascal Milcent <jpm@clapas.org> (translate bat file to shell script)
# License : GPL v3
# Création : 28 décembre 2010
# Version: 0.1
# $Id$
########################################################################################################################
# Constante
NBREPARAM=$#
BASE_URL="http://beta.letuffe.org/ressources/export-communes/incomplet/"
DOSSIER_DEPOT="/home/jpm/Documents/Cartographie/Communes/Incomplet/"
DOSSIER_TELECHARGEMENT="${DOSSIER_DEPOT}Telechargements/"
DOSSIER_EXTRACTION="${DOSSIER_DEPOT}Extraction/"
DOSSIER_LOCAL_KMZ="${DOSSIER_DEPOT}Kmz"
DOSSIER_DESTINATION="/www/commun/google/map/3/kmz/communes_icompletes"
LOG="${DOSSIER_DEPOT}log.txt"
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_EXTRACTION
mkdir $DOSSIER_EXTRACTION
rm -fR $DOSSIER_LOCAL_KMZ
mkdir $DOSSIER_LOCAL_KMZ
 
echo "Téléchargement des derniers fichiers shape en cours...";
wget -A "$EXT" -P $DOSSIER_TELECHARGEMENT -o $LOG -N -v -i $BASE_URL
echo "Extraction des fichiers en cours...";
cd $DOSSIER_EXTRACTION
for f in $DOSSIER_TELECHARGEMENT$EXT; do
d=`basename $f .shp.tar.gz`
mkdir $d
(cd $d && tar xf $f)
done
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_shp" ]; then
rm -f "$dossier/*.km*"
ogr2ogr -f KML $fichier_kml $fichier_shp $nom_dpt
/opt/lampp/bin/php ~/web/communes/cli.php nettoyage_kml -a nettoyer -f $fichier_kml
fi
fi
done
for fichier in $dossier/*; do
if [ -f $fichier ]; then
if [[ "$fichier" != "$fichier_kml" && $fichier == *.kml ]]; then
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 $DOSSIER_LOCAL_KMZ $DOSSIER_DESTINATION ; quit"
fi
Property changes:
Added: svn:executable
+*
\ No newline at end of property
Added: svn:eol-style
+native
\ No newline at end of property