Das Datum einer Datei kann beliebig per PowerShell gesetzt beziehungsweise manipuliert werden. Im Screenshot sind beispielhaft ein paar beliebig gesetzte Werte zu sehen. Die Vorgehensweise ist getestet mit Windows PowerShell 5.1.
Per Get-Member
kann man sich die Zeit-Attribute einer Datei anzeigen lassen.
|
|
Interessant sind hier die Attribute:
- CreationTime (Wann die Datei erstellt wurde)
- LastAccessTime (Wann das letzte Mal auf die Datei zugegriffen wurde)
- LastWriteTime (Wann die Datei zuletzt geändert wurde)
Wie hinten am {get;set;}
zu erkennen ist, kann man die Attribute auch nicht nur auslesen, sondern auch setzen.
Beispiele
Im Folgenden zeige ich ein paar Beispiele, wie das Änderungsdatum, der Zeitpunkt des letzten Zugriffs und des Erstellzeitpunkts von einzelnen Dateien oder auch allen Dateien in einem Ordner geändert werden kann.
Hinweise zu den Beispielen
Datum generieren
Ich generiere das Datum am liebsten im folgendem Format: 2020-09-13T13:37:37
(siehe auch ISO 8601), alternativ vereinfacht auf 2020-09-13 13:37
. Dieses standardisierte Format funktioniert unabhängig von OS-Lokalisierungen.
Abkürzungen und Aliase
Mit gci
(Abkürzung/Alias für Get-ChildItem
) lesen wir alle Elemente (Ordner und Dateien) im aktuellen Ordner aus.
Mit %
(Alias für ForEach-Object
) gehen wir durch alle Elemente eingegebenen Elemente durch.
Erstelldatum ändern
Beispiele zum Erstelldatum (“Erstellt”) ändern:
|
|
Änderungsdatum ändern
Beispiele zum Änderungsdatum (“Geändert”) ändern:
|
|
Datum des letzten Zugriffs ändern
Beispiele zum Zugriffszeitpunkt (“Letzter Zugriff”) ändern:
|
|
Fazit
Da die Zeit-Attribute von Dateien beliebig manipuliert werden können, sollte ihnen nicht getraut werden. Sie können bestenfalls als Anhaltspunkt für eine Aktion in einem System genutzt werden. Ein Beweis sind sie jedoch definitiv nicht.