Erstelldatum vieler Dateien ändern (aus Dateinamen abgeleitet)

Skilla44

Cadet 4th Year
Registriert
Jan. 2007
Beiträge
75
Hallo liebe Community,

wie immer seid ihr meine letzte Anlaufstelle, wenn mir Google nicht mehr weiterhilft :-)

Ich habe hier rund 1.200 Photos meines alten Handys, die auf meinem neuen iPhone in der Reihenfolge der Aufnahme angezeigt werden sollen. Nachdem ich hier gelesen habe, dass sich das iPhone dabei u.A. nach dem Erstelldatum der Datei richtet, ist mir aufgefallen, dass ich dieses durch das Kopieren auf den Computer "zerstört" habe.
Die Dateien tragen als Erstellungsdatum das Datum, an dem ich sie auf den PC kopiert habe (eigentlich logisch).

Da man im iPhone nichts an der Sortierung beeinflussen kann, möchte ich jetzt das Erstelldatum der alten Bilder wiederherstellen. Glücklicherweise ist das Aufnahmedatum aus dem Dateinamen erkennbar
(z.B. 2012-10-08 13.31.17.jpg).

Hat jemand eine Idee, wie ich das Erstelldatum dieser 1.200 Dateien jetzt, abgeleitet aus dem Dateinamen, ändere?
Ich könnte mir vorstellen, dass sich dieses mit einer kleinen Batch-Datei oder einem VisualBasic-Script realisieren ließe, leider fehlen mir dafür die nötigen Kenntnisse...
 
Es gibt tools, welche über die Exif Daten Dateien umbennennen können - ob sie auch das Erstell/Modified/...Datum ändern können, ist mir nicht bekannt.

Alternativ liesse sich das zwar notfalls über ein script erledigen, mit dem linux befehl 'touch'.

Ungetestet, benötigt unter windows die cygwin utilities:

Code:
for x in *.jpg; do
  touch --date="${x//./:}" "$x"
done
 
Zuletzt bearbeitet:
Das Erstelldatum ist immer das Datum, an dem du Datei erstellt hast... auf dem PC ist das Datum, an dem du die Bilder vom Handy auf dem PC kopiert hast, am iPhone das Datum, an dem du die Bilder darauf kopiert hast.

Aber du hast die Dateien ja nicht verändert. Eigentlich sollte das "Geändert am" (oder so) Datum ja noch das ursprüngliche sein.

Mein Android Smartphone sortiert die Bilder in der Galerie anhand dessen chronologisch richtig, geht das beim iPhone nicht? ;)
 
Zuletzt bearbeitet:
Ich habe da kurz was zusammengebastelt. Wenn die Dateinamen dem Schema "YYYY-MM-DD hh.mm.ss.ext" entsprechen, kann mein Tool diese Daten auslesen und als Erstellungsdatum eintragen.

Das geht übrigens sau fix. Für 20.000 Dateien braucht er bei mir nur ~3 Sekunden. Quelltext liegt mit bei für den Fall, dass du den kompilierten Dateien nicht traust. Mit Visual Studio Express (ist kostenlos) kannst du den Code selber kompilieren.

Der Code ist open source. Wer will, kann sich daraus nehmen, was er will. Egal für welche Zwecke. Die drei Icons sind Teil der Visual Studio 2010 Image Library. Die dazugehörige Lizenz kann man hier nachlesen: Klick. (Sind nur drei Zeilen, die die Verteilung nicht einschränken.)
 

Anhänge

  • CreationTimeChanger.zip
    878,4 KB · Aufrufe: 5.336
  • Gefällt mir
Reaktionen: Alufoliengrille und eschy10
Vielen Dank für eure Antworten!

@noay11 ich möchte die Dateien nicht umbenennen, sondern das Erstelldatum verändern, soweit ich das sehe wird solch eine Funktion bei AntRenamer nicht geboten.

@ bu1137 ich habe mir schon diverse Exif-Tools angesehen und diese Funktion nicht entdeckt. Der touch-Befehl ändert meines Wissens nur das Zuletzt geändert-Datum, leider nicht das Erstelldatum...

@ Don Sanchez du hast es erfasst. Zumindest diese Sache war bei meinem vorherigen Android-Smartphone besser gelöst...aber auf dem iPhone hat man auf die Sortierung leider nur mit meinem gesuchten Trick Einfluss...

@ e-Laurin Vielen, vielen Dank für deine Mühe! Deinem Post nach klingt dein Tool genau nach dem, was ich suche! Bei Erfolg werde ich mich melden, gerade ist die Zeit ein wenig knapp...

Verdammt!!! e-Laurin, dein Tool funktioniert wunderbar...hat genau das gemacht was es sollte, den Quelltext werde ich mir mal genauer ansehen xD...wie kommts dass du so etwas so flink kannst? xD
 
Zuletzt bearbeitet:
touch ändert schon auch den created timestamp, aber e-Laurins tool ist für dich wohl etwas einfacher ;)
 
Skilla44 schrieb:
e-Laurin, dein Tool funktioniert wunderbar...hat genau das gemacht was es sollte, den Quelltext werde ich mir mal genauer ansehen xD...wie kommts dass du so etwas so flink kannst? xD

Freut mich, dass ich helfen konnte. Und so schnell war ich auch nicht. Einige Sachen musste ich schon nachschlagen. Aber genau deswegen habe ich mich auch dran gesetzt.
 
Hallo e-Laurin,
dein Tool ist einsame Spitze, ich habe im Netz nichts Besseres gefunden.
Ist es möglich, dass dein Tool nicht nur das Erstelldatum, sondern auch das Änderungsdatum einer Datei auf diese Weise ändert.
Z.B. Picasa von Google verwendet das Änderungsdatum zur Katalogisierung von Videodateien.

Danke und viele Grüße
Noah Vincent
 
e-Laurin schrieb:
Freut mich, dass ich helfen konnte. Und so schnell war ich auch nicht. Einige Sachen musste ich schon nachschlagen. Aber genau deswegen habe ich mich auch dran gesetzt.

Hallo e-Laurin,
dein Tool ist einsame Spitze, ich habe im Netz nichts Besseres gefunden.
Ist es möglich, dass dein Tool nicht nur das Erstelldatum, sondern auch das Änderungsdatum einer Datei auf diese Weise ändert.
Z.B. Picasa von Google verwendet das Änderungsdatum zur Katalogisierung von Videodateien.

Danke und viele Grüße
Noah Vincent
 
@ll/ e-Laurin: Hey, entweder ich bin blind oder es fehlt an Kompetenz, aber wie funktioniert der "CreationTimeChanger" ? Also wie wähle ich die Bilder aus?
Nachdem ich das Verzeichnis gewählt habe erscheint bei mir immer die Fehlermeldung:

"Index and length must refer to a location within the string.
Parameter name: length

at System.Sting.InternalSubStringWithChecks(Int32 startIndex, Int32 length,
Boolean fAlwaysCopy)
at CreationTimeChanger.MainWindow.ProcessFiles()"
 
Sehr geehrter e-Laurin,

Ich lud mir soeben Ihr Programm "CreationTimeChanger" herunter. Es funktioniert einwandfrei. Könnten Sie mir bitte bei einer Änderung helfen? Ich benötige Ihr Programm für Anpassung des Änderungsdatums (nicht wie aktuell des Erstelldatums). Ist es aufwändig das Programm dahingehend anzupassen? Leider habe ich ich von Programmier-Hochsprachen keine Ahnung....

Hintergrund meines Anliegens: Meine Kamera nimmt Full-HD-Filme im M2TS-Format auf. Die Dateien werden riesig (ca. 200MB pro Minute). Ich überführe die Dateien daher in das platzsparende mkv-Format (mit Handbrake). Leider verliere ich dabei das originale Änderungsdatum. Mit dem Programm "Rename Expert" vergebe ich vor der Konvertierung nun Dateinamen im "YYYY-MM-DD hh.mm.ss"-Format, generiert aus dem originalen Änderungsdatum. Nach der Konvertierung bleiben die Dateinamen erhalten. Somit wäre der letzte Schritt zum originalen Änderungsdatum ein Rückschreiben des Änderungsdatums aus dem Dateinamen. Dabei bräuchte ich Ihre Software)

Vielen Dank im Voraus!

Mit freundlichen Grüßen
der_brain
 
kleine Ergänzung (Änderungsdatum)

Auch wenn es schon 1,5 Jahre her ist: ich habe dieses hilfreiche Tool heute über g..gle gefunden und will für weitere Anwender noch darauf hinweisen, dass es mit kleinen Vorbereitungen für andere Datei-Schemata nutzbar ist und wie man das Änderungsdatum anpasst.
Das Schema meiner (Video-)Dateien war: "YYYY-MM-DD_hhmmss.ext", wobei der Dateityp unterschiedlich war (*.cont, *.m2ts, *.pmpd, ...).
Durch Probieren herausgefunden:

  • 1. Schritt: Änderung der Dateinamen (z.B. mit "Ant Renamer") im Stapelmodus: Einfügen von Punkten bei den Zeitangaben und Austausch des Unterstrichs mit einem Leerzeichen.
  • Die Länge der Extension spielte bei mir keine Rolle und blieb so wie im Original.
  • 2. Schritt: "CreationTimeChanger" angewandt (habe ich erstmal in einem kopierten Probeordner versucht, lief aber einwandfrei) - Ergebnis: Erstelldatum korrekt geändert.
  • 3. Schritt: Mit "BulkFileChanger" Zeit kopiert von "Erstellt" nach "Geändert" und "Zugriff"
-> Problem gelöst.

--------
Mein ausdrückliches Lob für dieses tolle Tool und den Autor: über 10.000 Beiträge, aber leider scheinbar seit Ende November nicht mehr aktiv.
 
Nun sind wider 2 Jahre vergangen und ich habe das gleiche via Google.com gesucht, wie der User vorher, und habe ebenso durchs Probieren meine Lösung für das Ergebnis "03.01.2018.-.07h53min18sec.jpg" gefunden!

Hier meine Lösung:

####

1.) BulkFileChanger

Dateien markieren --> Änderungsdatum zum Zugriffs und Erstell-Datum machen:

Actions --> Change Time Date / Attributes --> Haken bei Copy from... Modified "TO" Created UND Accessed --> DoIt

2.) XnVief

Dateien markieren --> Tool --> Batch Name --> "<Creation Date [d.m.Y.-.HhMxSsec]>" auswählen --> Rename

3.) AntRenamer

Dateien markieren --> Bearbeiten --> Zeilen Austauschen --> Suche nach "x" --> Ersetze durch "min"

####

Fertig!
 
Zurück
Oben