Gibt es Möglichkeiten, die Metadaten zum „Erstellungsdatum“ von Dateien zu schützen?

Gibt es Möglichkeiten, die Metadaten zum „Erstellungsdatum“ von Dateien zu schützen?

Ich habe kürzlich alte Fotos durchgesehen und neu organisiert – und bin auf viele Fälle gestoßen, in denen die Date createdMetadaten nicht das Aufnahmedatum (oder das Einscannen) der Fotos wiedergaben, sondern das Datum und die Uhrzeit, zu der sie zuletzt aus einem anderen Archivverzeichnis kopiert wurden (nehme ich an). Während mein spezielles Szenario nur Bilddateien betrifft, suche ich nach einer Lösung, die auf alle Dateitypen angewendet werden kann.

Gibt es Tipps/Techniken, um dies in Zukunft unter Windows/Linux zu verhindern, beispielsweise indem man Date createdMetadaten schreibgeschützt macht?

Außerdem wäre ich für alle Tipps, wie ich einen geschätzten (oder genauen) Wert festlegen könnte, Date createdum diese aktualisierten Dateien zu korrigieren, sehr dankbar :)

Antwort1

"Erstellungsdatum" istbedeutungslosging es immer nur um das BesondereBeispieldieser Datei. Windows erlaubt keine manuelle Änderung, und Linux erlaubte im Allgemeinen nicht einmalhabendas war bis vor kurzem so. (Und selbst dann speichern nur einige Dateisysteme die 'Geburtszeit' und es gibt keine gemeinsame API, um darauf zuzugreifen. Beachten Sie, dass "ctime" unter LinuxnichtErstellungszeitpunkt.)

Sie werden viel mehr Glück haben, wenn Sie versuchen, die"Datum geändert"Zeitstempel, der mehr über dieInhaltder Datei. Das ist, was die meisten Dateimanager Ihnen zeigen. Und die meisten Programme bewahren es bereits standardmäßig auf – es wird von Dropbox aufbewahrt, es wird in Zip-Archiven aufbewahrt, es wird sogar beim Herunterladen von Dateien übertragenüber das Internet.

Mein allgemeiner Vorschlag wäre also, nach Möglichkeiten zu suchen, dieGeändertZeitstempel. Sperren ist schwieriger (obwohl wahrscheinlich nicht unbedingt notwendig), aber unter Linux wäre es einfach, ein Skript zu schreiben, um zumindestsichern und WiederherstellenEs:

#!/usr/bin/env perl
sub mtime { return (stat shift)[9]; }
print "#!/bin/sh\n";
for $file (grep {-f} glob("*")) {
    print "touch -d @".mtime($file)." '$file'\n";
}

(Nun, es ist ein Backup-Skript, daserzeugtein Wiederherstellungsskript.)

Sie sprechen jedoch von Fotos. Ich vermute, sie sind im JPEG-Format gespeichert, nicht im „Raw“-Format. Die meisten Fotoverwaltungstools unterstützen das Einbetten von „Exif“-Metadaten in JPEG, und die meisten Kameras tun dies automatisch. Unter Windows können Sie im Datei-Explorer einfach die Spalte „Aufnahmedatum“ anstelle von „Erstellungs-/Änderungsdatum“ aktivieren, und Ihnen werden die Fotodaten aus den JPEG-Dateien angezeigt.

verwandte Informationen