Anbei das Script.
Es ist in Perl geschrieben und läuft unter Linux. Wer auf seinem Windows oder Apple Rechner "perl" installiert hat oder "mingw" oder neuerdings vielleicht auch "WSL", das "Windows Subsystem for Linux" ab WIndows 10, der sollte es auch nutzen können.
Es heißt "gpxAdjust.pl" und wird auf der Kommandozeile aufgerufen.
Mit
$ gpxAdjust.pl -h
gibts eine Hilfe dazu (das Dollarzeichen wird nicht einbgegeben, es stellt nur das Komandozeilen-Prompt dar).
Beispiel:
$ gpxAdjust.pl -s -p <input.gpx > output.gpx
Wird die Datei 'input.gpx' eingelesen und verarbeitet, und das Resultat in 'output.gpx' geschrieben. Wer für diese beiden Dateien denselben Namen verwendet, zerschießt sich seine Eingabedaten. Ansonstern bleibt as Original unverändert.
'-s' heißt dabei (wahlweise) 'Tracks je Tag splitten'. Hab ich gemacht, weil meine Holux-Daten alles in einem gigantischen Track hatten.
'-p' heißt (ebenfalls wahlweise, aber empfehlenswert), dass Daten NACH dem letzten Rollover (also z.B. heute) NICHT geändert werden, sie bleiben erhalten.
'-h' zeigt weitere Hilfe an.
Anmerkung: Wird das Flag '-h' angegeben, tut das Script nichts weiter als die Hilfe anzuzeigen, egal was sonst angegeben wurde.
Wenn man gar nichts angibt, macht das Script auch nichts, man muss also schon hinschreiben, was man tun möchte. Zum Beispiel einen Offset auf die Zeitstempel addieren, also z.B. '-o 1024w'. Oder mit '-s' die Tracks splitten. Mehr dazu unten. Das Script kann also beliebeige Zeiten addieren oder auch subtrahieren, womit es sich auch dafür eignet, beliebige Zeitkorrekturen vorzunehmen:
- '-o 10:00:00' addiert 10 Stunden.
- '-o -10:00:00' subtrahiert 10 Stunden
- '-o 12w' addiert 12 Wochen und logischerweise zieht dann
- '-o -4w' vier Wochen ab.
- '-o 13d' addiert dreizehn Tage, negativ müsste herleitbar sein ...
Es ist auch geeignet, mit '-s' nur die Tracks zu splitten ohne die Zeitstempel zu verändern.
Bevor Nachfragen kommen: Ich mache oder unterstütze keine extra Windows oder Apple Version. Wenn aber Fehler unter Linux auftreten, könnt Ihr das gerne hier posten, schau ich mir dann an und brings in Ordnung sofern möglich und sinnvoll.
Hoffe, es nützt.
PS: Die ganze Arie ignoriert jede UTC/MESZ oder sonstigen Zeitzonen. Es werden einfach nur die Zeitstempel verarbeitet, denn es ist nicht automatisch herleitbar, was für Zeiten in so einer Datei gespeichert wurden. Da muss also jeder selber wissen, was er tut.
Ist aber kein großes Ding, weil das Script mit den o.g. Flags ja beliebige Zeitkorrekturen erlaubt, vorwärts wie rückwärts. Nur wenn ein Track über mehrere Tage geht, innerhalb derer die bekotzte Sommerzeitumstellung war, wirds u.U. komisch. Dann muss man die Tracks eben erst mal entsprechend splitten, ggf. selber in Einzeldateien schreiben und dann diese Dateien individuell verwursten.
PS: Das Script ist jetzt im nächsten Beitrag, siehe dort.