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=$# |
DOSSIER_DEPOT="/home/jpm/Documents/Cartographie/Communes/" |
DOSSIER_TELECHARGEMENT="${DOSSIER_DEPOT}Telechargements/" |
DOSSIER_EXTRACTION="${DOSSIER_DEPOT}Extraction/" |
DOSSIER_LOCAL_KMZ="${DOSSIER_DEPOT}Kmz" |
DOSSIER_DESTINATION="/www/eflore/cel2/widget/modules/carto/squelettes/kml" |
LOG="${DOSSIER_DEPOT}log.txt" |
BASE_URL="http://beta.letuffe.org/ressources/export-communes/" |
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:eol-style |
+native |
\ No newline at end of property |
Added: svn:executable |