Robocopy-Befehlszeilenprogramm (wird mit den meisten Windows-Versionen geliefert)
Auf meinem Windows 10-Computer befindet es sich unterC:\Windows\System32
In Wikipedia kann es mit den folgenden Optionen verwendet werden, um Datei- und Verzeichniszeitstempel sowie andere Attribute beizubehalten:
Robocopy C:\some_directory D:\some_directory /DCOPY:T /COPYALL /E /R:0
/DCOPY:TBeibehaltung der ursprünglichen Verzeichnis-Zeitstempel (erfordert Version XP026 oder höher)
/E: Verzeichnisse rekursiv kopieren, einschließlich leerer Verzeichnisse
/R:0: Gesperrte Dateien nicht wiederholen (der Standardwert für die Anzahl der Wiederholungsversuche bei fehlgeschlagenen Kopien beträgt 1 Million),
/COPYALL: Alle Dateiinformationen kopieren
(entspricht /COPY:DATSOU, wo
D= Daten,
A= Attribute,
T= Datei-Zeitstempel ,
S= Sicherheit = NTFS-ACLs,
O= Besitzerinfo,
U= Prüfungsinformationen),
Wenn Sie nur Datum und Verzeichnis Zeitstempel erhalten wollen, aber tun nicht wollen leer Verzeichnisse kopiert und Sie nicht möchten , dass andere Attribute erhalten , dann können Sie verwenden:
Robocopy C:\some_directory D:\some_directory /DCOPY:T /COPY:T /S
wo /SKopien nicht leeren Unterverzeichnisse
Um die vollständige Syntax anzuzeigen, geben Sie robocopy /?an einer Eingabeaufforderung Folgendes ein oder werfen Sie einen Blick auf die folgenden Blogeinträge: https://ss64.com/nt/robocopy.html und
https://techjourney.net/robocopy-syntax-command-line -schalter-und-beispiele /
Ein Beispiel für einen Befehl, den ich kürzlich ausgeführt habe:
Robocopy D:\ C:\D_backup /DCOPY:T /COPYALL /E /R:0 /ZB /ETA /TEE /V /FP /XD D:\$RECYCLE.BIN /XD "D:\System Volume Information" /LOG:C:\D_backup_robocopy.LOG /MIR
Beachten Sie, dass beim Ausschließen von 2 Unterverzeichnissen das /XDFlag zweimal verwendet werden muss. Außerdem werden beim zweiten Verzeichnisausschluss Anführungszeichen verwendet, da der Verzeichnisname Leerzeichen enthält.
Schließlich können Sie das /LFlag hinzufügen , um den Befehl zu testen, bevor Sie ihn für echt ausführen. Auf diese Weise können Sie sicherstellen, dass keine Verzeichnisse / Dateien kopiert (oder entfernt) werden, die Sie nicht möchten, und dass Ihr Befehl keine Fehler enthält.
Edit: gotcha beim Kopieren von einem Root-Verzeichnis (aka Laufwerk) in einen Ordner (Nicht-Root-Verzeichnis)
Nach dem Ausführen des obigen Beispielbefehls war das Verzeichnis nicht sichtbar! (Auch wenn show hidden filesund show system fileswurden in Windows 10 überprüft!) Der folgende Befehl gemäß https://serverfault.com/a/455029/399723 behebt dies:
attrib -h -s C:\D_backup
Alternativ kann durch Hinzufügen der /A-:SHOption "Verborgenes Attribut aus Systemdateien entfernen" verhindert werden, dass das Verzeichnis zunächst ausgeblendet wird (siehe https://serverfault.com/a/565804/399723) . Siehe auch https://ss64.com/nt/robocopy.html .
In dieser Beschreibung wird diese Option als Lösung näher erläutert .
Robocopy D:\ C:\D_backup /A-:SH /DCOPY:T /COPYALL /E /R:0 /ZB /ETA /TEE /V /FP /XD D:\$RECYCLE.BIN /XD "D:\System Volume Information" /LOG:C:\D_backup_robocopy.LOG /MIR
Andere Software:
Alternativ können Sie eine GUI-Version von robocopy herunterladen, wenn Sie die Befehlszeile nicht verwenden möchten.
Ein weiteres Windows-Dienstprogramm ist XCopy , obwohl es in Windows 10 enthalten ist, wird es nicht mehr empfohlen. Siehe den Link für Fallstricke.
Die Wikipedia-Seite für RoboCopy (oben in diesem Beitrag verlinkt) listet andere Software auf, die verwendet werden kann.