gpx-Dateien automatisiert verändern

probeo

Newbie
Registriert
Aug. 2014
Beiträge
4
Hallo Gemeinde,

eine Frage, wie ich geschickt folgendes Problem lösen könnte.

Ich hab gpx-Dateien (Garmin Track) von sehr vielen Touren, Ausflügen Wanderungen, die sich im Laufe der Jahre

angesammelt haben.

Hab jetzt die Dateinamen nach einem System schön sauer alle umbenannt und stelle fest, daß mein Navi leider nicht die

Dateinamen anzeigt, sondern was in der gpx-Datei (eigentich eine XML-Datei) im Eintrag

<trk><name>Tourbeschreibungstext</name>
steht, anzeigt.

Jetzt möchte ich automatisiert dort den Dateinamen eintragen.

Ich verwende Windows und kann leider keine Programmiersprache.

Ich hatte die Idee ein Text Parser Programm zu verwenden und hab mit V-Grep experimentiert und mit TextCrawler.

Ich schaffe es auch die Stellen zu finden, mit RegEx Pressions, das hab ich hingekriegt.

Das Problem ist, das ich innerhalb dieser Programm nicht weiß wie ich an den Dateiname rausbekommen soll !

Hat jemand eine Idee ? Oder wie könnte ich mein Problem sonst lösen ?
 
Also ich würde mir da in einer Skriptsprache ein kleines Progrämmchen schreiben (AutoHotkey oder AutoIt wären dafür z.B. gut geeignet - können beide RegEx).
 
The beauty of the powershell :-)
Code:
Get-ChildItem $PSScriptRoot -Filter *.gpx | Foreach-Object {
    $file = $_
    "==> " + $file.Name
    $xml = New-Object xml
    $xml.Load($file)
    $xml.gpx.trk | ForEach-Object {
        Try {
            $_.name = $file.BaseName.ToString()
        } Catch {
            # Kein name-Attribut?
        }
    }
    $xml.Save($file)
}
Einfach als gpx-modify.ps1 in den Ordner der gpx-Dateien abspeichern und ausführen lassen.
 
Zurück
Oben