Zur Planung meiner Touren benutze ich Google Earth unter Ubuntu. Nach Fertigstellung wird der Google Earth Pfad (hier UmHemau) im KML-Format in einem Directory meines Laptops (/home/kirus/Desktop/Documents/KMLGPX) gespeichert.
Für das Garmin Oregon 450 konvertiert das folgende Script die KML-Datei in das GPX-Format mit Hilfe von gpsbabel:
#!/bin/bash
E61_DIR="/home/kirus/E61i/E:/Data/Xfer"
OREGON_DIR="/media/GARMIN/Garmin/GPX"
GPSBABEL="/usr/bin/gpsbabel"
#
function usage {
echo "usage: kml2gpx "
exit 0
}
#
function abort {
echo "$1"
exit 1
}
# Abort if gpsbabel is not installed
[ -x $GPSBABEL ] || abort "gpsbabel is not installed."
# Abort if the number of arguments is wrong
[ $# = 1 ] || usage
# Abort if the provided file does not exist
[ -e $1 ] || abort "File not found: $1."
# Abort if the extension of the provided file is not gpx
ext=${1##*.}
[ $ext == "kml" ] || abort "Wrong extensions: $ext."
# Create the gpx file
KML_FILE="$1"
GPX_FILE="$(dirname "$KML_FILE")/$(basename "$KML_FILE" .kml).gpx"
$GPSBABEL -i kml -f $KML_FILE -x transform,rte=trk,del -o gpx -F $GPX_FILE
# Transfer the created files to the mounted devices
[ -d $E61_DIR ] && cp $GPX_FILE $E61_DIR
[ -d $OREGON_DIR ] && cp $GPX_FILE $OREGON_DIR
Der Aufruf kml2gpx/home/kirus/Documents/KMLGPX/UmHemau.kml erzeugt /home/kirus/Documents/KMLGPX/UmHemau.gpx im gleichen Directory.
Ist das Oregon im Mass-Storage-Mode mit dem ausführenden Computer verbunden, kopiert das Script das GPX-File automatisch in das vorgesehene Routing-Directory auf dem Navigationsgerät:

Auf dem Garmin steht die Route dann zum Beipiel über den Routeplanner bereit:

Bei Einsatz von incron läuft das Ganze automatisch:
kirus@osiris:~$ incrontab -e
/home/kirus/Desktop/Documents/KMLGPX IN_CLOSE_WRITE /home/kirus/local/bin/kml2gpx.sh $@/$#
kirus@osiris:~$
Die Packages googleearth, gpsbabel und incron werden unter Ubuntu leicht mit einem Packagemanager nach Wahl installiert.



