Zeitstempel synchronisieren

German support forum

Moderators: sheep, Hacker, Stefan2, white

werengel
Junior Member
Junior Member
Posts: 8
Joined: 2006-02-06, 09:57 UTC

Zeitstempel synchronisieren

Post by *werengel »

Hallo,
ich habe ein Quellverzeichnis und ein Zielverzeichnis mit geänderten Dateien (gleiche Dateinamen aber neuer Inhalt/Datum). Wie kann man die Original Zeitstempel wieder herstellen (Plugin) ?
Werner

User avatar
Dalai
Power Member
Power Member
Posts: 7099
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

Synchronisierungstool aufrufen, einzelne ausblenden, vergleichen lassen und dann alle markieren, Rechtsklick > Kopiere Dateieigenschaften (links > rechts oder umgekehrt).

Wenn es nicht zuviel Datenvolumen ist, kann man das stattdessen auch synchronisieren/kopieren lassen.

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups

werengel
Junior Member
Junior Member
Posts: 8
Joined: 2006-02-06, 09:57 UTC

Post by *werengel »

Alles klar, war mal wieder zu blind..

Master_Chief_87
Junior Member
Junior Member
Posts: 2
Joined: 2014-05-07, 11:11 UTC

Post by *Master_Chief_87 »

Hallo alle zusammen. :)

Bin noch etwas neu und ungeübt im Umgang mit dem Total Commander.

Deshalb meine Frage: Gibt es eine Möglichkeit den Zeitstempel von ORDNERN zu synchronisieren?
Oder ist das generell nur auf DATEIEN begrenzt?


Viele Grüße aus Dresden

User avatar
Dalai
Power Member
Power Member
Posts: 7099
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Post by *Dalai »

Master_Chief_87 wrote:Deshalb meine Frage: Gibt es eine Möglichkeit den Zeitstempel von ORDNERN zu synchronisieren?
Oder ist das generell nur auf DATEIEN begrenzt?
Man kann das Verzeichnisdatum kopieren lassen*, aber synchronisieren ist AFAIK nicht möglich. Dazu kommt noch, dass NTFS bei jeder Änderungen innerhalb eines Verzeichnisses den Zeitstempel des Verzeichnisses aktualisiert. Beispiel: Gegeben sei das Verzeichnis C:\totalcmd. Nun wird irgendeine Datei daraus gelöscht oder es kommt eine neue hinzu. Windows wird nun automatisch dafür sorgen, dass der Zeitstempel von C:\totalcmd der aktuellen Zeit entspricht.

Fazit: Der Zeitstempel eines Verzeichnisses ist ganz und gar nicht verlässlich. Oder anders ausgedrückt: Wer sich auf das Verzeichnisdatum verlässt, ist verlassen.

*) Einstellungen > Operation > Kopieren/Löschen > Kopiere Datum/Zeit von Verzeichnissen.

MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups

Master_Chief_87
Junior Member
Junior Member
Posts: 2
Joined: 2014-05-07, 11:11 UTC

Post by *Master_Chief_87 »

Das ist aber schade, dass dies nicht möglich ist. Da muss ich jetzt also noch mal 2TB an Daten kopieren, weil ich's vorher nur mit dem Win-Explorer gemacht. :?

Mit dem Änderungsdatum bin ich immer sehr gut zurecht gekommen, da der Inhalt der betreffenden Ordner nur ein einziges mal von mir angepasst/bearbeitet/formatiert wird und danach keine Änderung mehr statt findet.

Ich nehme mal an, dass man das Erstelldatum auch nicht synchronisieren kann? Dieses bleibt ja immerhin auch bei Änderungen des Ordnerinhalts bestehen.

Gibt es vielleicht noch eine Lösung (fernab vom Total Commander)?

User avatar
Hacker
Moderator
Moderator
Posts: 11722
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

Master_Chief_87,
Kurzes AutoHotkey Skript:

Code: Select all

Loop, %1%*.*, 1, 1
{
	FileGetTime, TimeStamp
	FileSetTime, %TimeStamp%, %2%%A_LoopFileName%
}
Auf die Button Bar legen, Parameter:

Code: Select all

"%P\" "%T\"
Quellfenster und Zielfenster im TC öffnen wobei das Quellfenster aktiv sein muss.

HTH
Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.

coro
New Member
New Member
Posts: 1
Joined: 2019-10-06, 14:10 UTC

Re: Zeitstempel synchronisieren

Post by *coro »

Hallo zusammen,

ich weiß, dass dieses Thema schon sehrt alt ist, jedoch trifft es genau meine Fragestellung und ich habe diese sonst nirgends gefunden.

Im Grunde habe ich die gleiche Frage wie Master_Chief_87 damals, d.h. ich möchte die Zeitstempel von Ordnern (in meinem Fall nur Ordner und nicht Dateien) wiederherstellen/angleichen.

Und Hackers AutoHotkey Skript von damals tut auch an sich was es soll (vielen Dank dafür!), jedoch nur genau für die ausgewählten Quell- und Zielverzeichnisse und nicht für die entsprechenden Unterverzeichnisse.

Ich habe mich auch mit der entsprechenden AutoHotkey Syntax auseinandergesetzt (https://ahkde.github.io/docs/commands/LoopFile.htm), jedoch auch dort keine Lösung gefunden. Der Modus ob Unterordner mit durchsucht werden scheint sich nur darauf auszuwirken, ob auch in Unterordnern passende Dateien oder Ordner für das gerade aktuelle Quellverzeichnis gefunden werden, aber nicht, dass Unterordner sowohl des Quell- als auch des Zielverzeichnisses verglichen werden.

Auch habe ich die alte Syntax an die neue angepasst (ich möchte wie gesagt nur Ordner-Timestamps übertragen), aber auch das hat nichts geändert:

Code: Select all

Loop, Files, %1%*.*, DR
{
	FileGetTime, TimeStamp
	FileSetTime, %TimeStamp%, %2%%A_LoopFileName%
}
Falls noch jemand eine Idee hätte, wie man das Skript auch für alle Unterordner der jeweiligen Quell- und Zielverzeichnisse anpassen kann (von mir aus auch außerhalb von Total Commander, aber da wäre ich hier wohl nicht an der richtigen Stelle...), würde ich mich sehr über Hilfe freuen.

Viele Grüße
coro

User avatar
sqa_wizard
Power Member
Power Member
Posts: 3556
Joined: 2003-02-06, 11:41 UTC
Location: Germany

Re: Zeitstempel synchronisieren

Post by *sqa_wizard »

Falls es ausreicht Verzeichnisse an das Datum der jeweils jüngsten Datei anzupassen, gibt es mittlerweile das Plugin SetFolderDate
#5767 Personal license

User avatar
Hacker
Moderator
Moderator
Posts: 11722
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Re: Zeitstempel synchronisieren

Post by *Hacker »

coro,

Code: Select all

Loop, Files, %1%*.*, DR
{
	FileGetTime, TimeStamp
	FileSetTime, %TimeStamp%, StrReplace(A_LoopFileLongPath, A_Args[1], A_Args[2])
}
Überhaupt nicht getestet :!:

HTH
Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.

Leerzeichen
Junior Member
Junior Member
Posts: 14
Joined: 2020-04-27, 20:04 UTC

Re: Zeitstempel synchronisieren

Post by *Leerzeichen »

Hallo

Ich habe ein ähnliches Problem.
Bei mir ist eine Festplatte kurz vor dem kaputt gehen.
Dummerweise habe ich ein Backup via Windows Kopierfunktion erstellt.
Daten habe ich zwar alle, aber alle mit "falschem" Datum.

Ich komme noch nicht wirklich nach wie ich das mit dem Script wieder korrigieren kann.
Die "defekte" Festplatte läuft soweit zwar noch, hat mit chkdsk allerdings diverse defekte Dateien gefunden weshalb ich das bestehende Backup lieber mit den Zeitstempel angleichen möchte, anstelle die Daten neu zu kopieren.

Ich kenne den Total Commander zwar auch schon seit über 10 Jahren, allerdings habe ich ihn auch so lange schon nicht mehr verwendet *shame on me*

Könnte mir bitte jemand erklären wie ich die Scripte anlegen und anschliessend nutzen muss, damit der Zeitstempel auf die im Backup enthaltenen Daten geschrieben werden kann?

Ich wäre ich dankbar bis in Ewigkeit!

Grüsse
Leerzeichen

User avatar
Dalai
Power Member
Power Member
Posts: 7099
Joined: 2005-01-28, 22:17 UTC
Location: Meiningen (Südthüringen)

Re: Zeitstempel synchronisieren

Post by *Dalai »

2Leerzeichen
Es braucht dafür keine Skripte. Es genügt, das genau so zu machen, wie ich das in meiner ersten Antwort hier bereits geschrieben habe - es sei denn, es geht dir (auch) um Zeitstempel von Verzeichnissen.

Grüße
Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64

Plugins: Services2, Startups

Leerzeichen
Junior Member
Junior Member
Posts: 14
Joined: 2020-04-27, 20:04 UTC

Re: Zeitstempel synchronisieren

Post by *Leerzeichen »

Hallo Dalai

Wenn möglich würde ich auch die Verzeichnisstempel wieder auf die Originaldaten setzen (Ich weiss das kann mit unter sinnfrei sein), da ich allerdings auch ein Archiv pflege, ist das für mich schon sehr hilfreich.

Wie geschrieben, ich habe schon lange nichts mehr mit dem TC erledigt.
Wenn du mir die Schritte erklären könntest, wäre ich dir wirklich dankbar.

Grüsse

User avatar
Lucky Joe
Member
Member
Posts: 122
Joined: 2012-07-25, 10:30 UTC

Re: Zeitstempel synchronisieren

Post by *Lucky Joe »

Hallo zusammen,

das AutoHotkey-Script von Hacker kann man wie folgt ändern, damit die Unterverzeichnisse mitberücksichtigt werden.

Code: Select all

#NoEnv
#SingleInstance force

QuellVerzeichnis = %1%
Loop, Files, %1%*.*, DFR   ; ("DR", wenn nur Verzeichnisse berücksichtigt werden sollen) 
{
	If StrLen(A_LoopFileDir) > StrLen(QuellVerzeichnis)
		UnterVerzeichnis := SubStr(A_LoopFileDir, StrLen(QuellVerzeichnis) +1) . "\"

	FileGetTime, TimeStamp
	FileSetTime, %TimeStamp%, %2%%UnterVerzeichnis%%A_LoopFileName%
	; MsgBox, %TimeStamp% - %2%%UnterVerzeichnis%%A_LoopFileName%
}
Will man nur Verzeichnisse ändern, dann ersetze

Code: Select all

Loop, Files, %1%*.*, DFR
durch

Code: Select all

Loop, Files, %1%*.*, DR
Herzliche Grüße aus dem Rheinland
Lucky Joe

Leerzeichen
Junior Member
Junior Member
Posts: 14
Joined: 2020-04-27, 20:04 UTC

Re: Zeitstempel synchronisieren

Post by *Leerzeichen »

Hallo zusammen

Kann es sein das der TC zwar mit der Funktion "Kopiere Dateieigenschaften" das Änderungsdatum mit kopieren kann, allerdings nicht das Erstelldatum der Dateien?

Ich habe folgenden Versuch eben durchgeführt.
Verzeichnis mit 3 Dateien, Erstellt 2011, letzte Änderung 2011
Wenn ich die Eigenschaften kopiere, werden die die beiden Eigenschaften kopiert, das Erstelldatum wird allerdings nicht angefasst, es bleibt beim Datum 07.01.2020 (Datum der Sicherung).

Wenn ich die Dateien im Zielverzeichnis lösche und dann neu syncronisiere, werden zwar wieder die beiden Eigenschaften von 2011 kopiert, nicht allerdings das Erstelldatum, hier wird das aktuelle Datum (echte Erstelldatum) vergeben.

Das hilft mir leider auch nicht wirklich weiter, ich würde gerne eine 1:1 Kopie der Datei inkl. Dateieigenschaften erzeugen (exkl. NTFS Berechtigungen).

Ist das mit dem TC irgendwie möglich?

Post Reply