DE:Using GPSBabel from the command line

From OpenStreetMap Wiki
Jump to navigation Jump to search

an unequal sign

Dieser Artikel ist eine deutsche Übersetzung des Originals (in der Regel auf Englisch), aber der Inhalt scheint unvollständig oder nicht aktuell zu sein! Bitte aktualisiere diese Übersetzung, wenn möglich.

Diese Seite beschreibt, wie das Programm GPSBabel von der Kommandozeile aus aufgerufen werden kann. Wie es mit vielen mächtigen Tools der Fall ist, sind es die Kommandozeilenparameter, die vieles der interessanten Funktionen zugreifbar machen. Der Preis dafür ist ein wenig Lernaufwand. Für GUI-Alternativen siehe GPSBabel oder Convert GPS tracks.

Basis-Kommando

Das Basis Kommando zum Aufruf von GPSBabel sieht so aus:

gpsbabel [options] -i INTYPE -f INFILE -o OUTTYPE -F OUTFILE

wobei ‘INTYPE’ und 'OUTTYPE' die Formate sind, die GPSBabel beherrscht, und 'INFILE' und ‘OUTFILE’ sind die jeweiligen Ein- und Ausgabedateien. Dies können jeweils Dateien oder Gerätedateien sein (bspw. ein angeschlossener GPS-Empfänger). Ein am seriellen Port angeschlossenes Gerät könnte unter Windows über 'com1' angesprochen werden und unter Linux per '/dev/ttyS0'.

Angenommen, es liegen Breitengrad, Längengrad und der Wegpunktname in einer CSV-Datei namens 'way.csv' vor:

40.70175, -103.68998, First Waypoint
39.28553, -123.79357, Another point
42.49638, -108.72995, And a third

Um diese im GPX-Format in die Datei way.gpx zu konvertieren:

gpsbabel -i csv -f way.csv -o gpx -F way.gpx

Das '-i csv' gibt an, dass es sich bei der Eingabedatei um eine CSV-Datei handelt.

Mit '-f way.csv' (Beachte, das ist ein kleines 'f'!) gibt man "way.csv" als Eingabedatei an (das könnte also auch eine serielle Schnittstelle sein, s.o.).

Per '-o gpx' sagt man, dass die Ausgabedatei im GPX-Format sein soll.

Schließlich gibt man mit '-F way.gpx' (Beachte: großes 'F') den Namen der gewünschten Ausgabedatei an (oder eben die gewünschte Gerätedatei, falls die Ausgabe direkt an ein angeschlossenes Gerät gehen soll)

Lesen von Wegpunkten von einem GPS-Gerät

GPSBabel unterstützt unter anderem GPS-Geräte von Garmin, Magellan und Wintec. Schließe Dein Gerät je nach Typ per USB oder am seriellen Anschluss an (Zum Anschluss serieller Geräte per USB siehe GPS Serial to USB). Ein serielles Garmin-Gerät wird per -i garmin angegeben, ein Magellan per -i magellan. Mit den Parametern -f und -F gibt man dann den entsprechenden seriellen Port an. Nutze -f zum Lesen vom GPS und -F zum Schreiben auf das GPS. (Beachte dabei: falls die folgenden Befehle auf einem Garmin-Gerät nicht funktionieren, überprüfe ob das auf dem Gerät eingestellte Schnittstellen-Protokoll "GARMIN" oder "GARMIN DGPS" ist).

Mehr Informationen über die Optionen von gpsbabel bekommst du mit

gpsbabel -?

, und durch Studium der README-Datei.

Hier sind einige Beispiele:

Um Wegpunkte von einem Garmin GPS-Empfänger zu lesen und sie in eine GPX-Datei namens 'waypoint.gpx' zu schreiben:

Windows

Angenommen, der GPS-Empfänger ist am ersten seriellen Port angeschlossen:

gpsbabel -i garmin -f com1 -o gpx -F waypoint.gpx

Hiermit wird das Eingabeformat als Garmin-Protokoll angegeben, welches am ersten seriellen Port gelesen wird. Die Ausgabe ist eine Datei im GPX-Format, die 'waypoint.gpx' heißt.

Falls das Gerät am USB-Anschluss angeschlossen ist:

gpsbabel -i garmin -f usb: -o gpx -F waypoint.gpx

Linux

Wenn der GPS-Empfänger am ersten seriellen Port angeschlossen ist (Beachte, dass der ausführende Benutzer die entsprechenden Rechte zum Lesen vom seriellen Anschluss hat, eventuell nutze sudo):

gpsbabel -i garmin -f /dev/ttyS0 -o gpx -F waypoint.gpx

Falls das Gerät per USB angeschlossen ist, versuche /dev/ttyUSB0 or usb:

gpsbabel -i garmin -f /dev/ttyUSB0 -o gpx -F waypoint.gpx
#odeer
gpsbabel -i garmin -f usb: -o gpx -F waypoint.gpx

Siehe auch: http://www.gpsbabel.org/os/Linux_Hotplug.html, USB Garmin on GNU/Linux

Ein GPSBabel Bash-Script zum Laden von Tracks, Wegpunkten, Routen gibt es bei Benutzer: gerkin

Mac OSX

Angenommen auf OSX ist ein GPS-Empfänger an einem Seriell-zu-USB Adapter angeschlossen:

gpsbabel -i garmin -f /dev/cu.usbserial0 -o gpx -F waypoint.gpx

Track Logs

Um Track Logs zu lesen gib ein '-t' vor dem (-i) an, das das Eingabeformat angibt. Um die Tracklogs unter Windows zu lesen also:

gpsbabel -t -i garmin -f com1 -o gpx -F tracklog.gpx

Routen

Genauso kann man mit dem -r-Parameter Routen lesen oder schreiben:

gpsbabel -r -i garmin -f com1 -o gpx -F route.gpx

Hinweis: Beim Schreiben einer Route wird für jeden Routenpunkt ein Wegpunkt erzeugt. Dies nervt, denn da Wegpunkte einen globalen Namensraum haben, werden diese umbenannt, falls in einer anderen Route derselbe Name bereits existiert (Ein klassischer Fall sind da numerische Wegpunktnamen, wie "1" "2" die dann zu "1 1" "2 1" usw. werden). Um das zu verhindern, kannst Du John Dally's patch for gpsbabel nutzen.

Senden von Daten auf ein GPS-Gerät

Indem man die Ein- und Ausgabeparameter vertauscht, kann man Tracklogs, Wegpunkte und Routen auch wieder auf das GPS-Gerät schreiben. Beispielsweise um Wegpunkte aus der Datei waypoint.gpx unter Windows auf einen GPS-Empfänger von Garmin zu schreiben, der am ersten seriellen Port angeschlossen ist:

gpsbabel -i gpx -f waypoint.gpx -o garmin -F com1

Die Benutzung von Filtern

Unter DE:using filters with GPSBabel ist die Benutzung von Filtern mit GPSBabel beschrieben.