Robocopy - Änderungen nicht auf Original-Destination kopieren?
Hallo,
folgendes Vorgehen.
Ich mache ein robocopy:
"robocopy c:\Quelle d:\Originalziel /e"
Wenn ich jetzt das gleiche robocopy ein zweites Mal ausführe, werden ja nur noch die geänderten Dateien übertragen. So soll es auch sein, allerdings möchte ich, daß diese (die geänderten Dateien) nicht nach d:\Originalziel kopiert werden (und damit die alten Dateien überschreiben), sondern nach d:\Alternativziel.
Ist das möglich?
Ich kenne die Parameter a und m, die kann ich aber nicht verwenden.
Danke
Gruß
Martin
folgendes Vorgehen.
Ich mache ein robocopy:
"robocopy c:\Quelle d:\Originalziel /e"
Wenn ich jetzt das gleiche robocopy ein zweites Mal ausführe, werden ja nur noch die geänderten Dateien übertragen. So soll es auch sein, allerdings möchte ich, daß diese (die geänderten Dateien) nicht nach d:\Originalziel kopiert werden (und damit die alten Dateien überschreiben), sondern nach d:\Alternativziel.
Ist das möglich?
Ich kenne die Parameter a und m, die kann ich aber nicht verwenden.
Danke
Gruß
Martin
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 238317
Url: https://administrator.de/contentid/238317
Ausgedruckt am: 25.11.2024 um 06:11 Uhr
8 Kommentare
Neuester Kommentar
Hallo Martin,
steht ales hier http://www.wintotal.de/robocopy-der-kopier-gigant/
und
hier http://www.tecchannel.de/storage/tools/2033515/robocopy_fuer_windows_da ...
LG
ticuta1
steht ales hier http://www.wintotal.de/robocopy-der-kopier-gigant/
und
hier http://www.tecchannel.de/storage/tools/2033515/robocopy_fuer_windows_da ...
LG
ticuta1
Zitat von @AlbertMinrich:
Ich mache ein robocopy:
"robocopy c:\Quelle d:\Originalziel /e"
... allerdings möchte ich, daß diese (die geänderten Dateien) nicht nach d:\Originalziel kopiert
werden ... sondern nach d:\Alternativziel.
Ist das möglich?
Ich mache ein robocopy:
"robocopy c:\Quelle d:\Originalziel /e"
... allerdings möchte ich, daß diese (die geänderten Dateien) nicht nach d:\Originalziel kopiert
werden ... sondern nach d:\Alternativziel.
Ist das möglich?
robocopy d:\originalziel d:\Alternativziel /mir
robocopy c:\Quelle d:\alternativziel /e
Danke, aber das ist nicht das, was ich will. Damit hab ich praktisch zwei Vollkopien. Die erste auf Originalziel, die zweite auf
Alternativziel. Wobei mir nicht klar ist, wofür das robocopy von originalziel nach alternativziel gut sein soll. Lässt
man den weg, bleibt das Ergebnis das gleiche.
Ich will folgendes erreichen. mal angenommen, in C:\Quelle gibt es 3 Dateien:
datei1
datei2
datei3
Nach dem ersten robocopy ("robocopy c:\Quelle d:\Originalziel /e") gibt es in D:\Originalziel die gleichen drei
Dateien.
Jetzt ändert sich in der Quelle die datei2. Nach dem nächsten robocopy will ich in D:\Alternativziel nur datei2 haben.
Mit dem Befehl
"robocopy c:\Quelle d:\Alternativziel /e /a"
bzw. auch mit
"robocopy c:\Quelle d:\Alternativziel /e /m"
würde ich genau das gewünschte erreichen.
/a = Kopiert nur Dateien mit dem "Archive"-Attribut.
/b = Kopiert nur Dateien mit dem "Archive"-Attribut und setzt das Attribut zurück.
Aber da es sich bei der Quelle um einen Linuxserver handelt, funktioniert das nicht mit den Archive-Attribut. Ich bin kein
Linuxler, ich weiß nicht, ob es bei Linux generell kein Archiv-Attribut gibt, aber auf jeden Fall nicht bei meinem
Linuxserver
@ticuta1
Ich kenn den robocopy-Befehl eigentlich ziemlich gut. Anleitungen sind mir bekannt. Meiner Meinung nach geht das von mir
gewünschte nicht, aber vielleicht hab ich ja was übersehen.
Gruß
Martin
Alternativziel. Wobei mir nicht klar ist, wofür das robocopy von originalziel nach alternativziel gut sein soll. Lässt
man den weg, bleibt das Ergebnis das gleiche.
Ich will folgendes erreichen. mal angenommen, in C:\Quelle gibt es 3 Dateien:
datei1
datei2
datei3
Nach dem ersten robocopy ("robocopy c:\Quelle d:\Originalziel /e") gibt es in D:\Originalziel die gleichen drei
Dateien.
Jetzt ändert sich in der Quelle die datei2. Nach dem nächsten robocopy will ich in D:\Alternativziel nur datei2 haben.
Mit dem Befehl
"robocopy c:\Quelle d:\Alternativziel /e /a"
bzw. auch mit
"robocopy c:\Quelle d:\Alternativziel /e /m"
würde ich genau das gewünschte erreichen.
/a = Kopiert nur Dateien mit dem "Archive"-Attribut.
/b = Kopiert nur Dateien mit dem "Archive"-Attribut und setzt das Attribut zurück.
Aber da es sich bei der Quelle um einen Linuxserver handelt, funktioniert das nicht mit den Archive-Attribut. Ich bin kein
Linuxler, ich weiß nicht, ob es bei Linux generell kein Archiv-Attribut gibt, aber auf jeden Fall nicht bei meinem
Linuxserver
@ticuta1
Ich kenn den robocopy-Befehl eigentlich ziemlich gut. Anleitungen sind mir bekannt. Meiner Meinung nach geht das von mir
gewünschte nicht, aber vielleicht hab ich ja was übersehen.
Gruß
Martin
Du sagtest Doch selber, daß Du die originaldateien behalten willst.
lks
Hallo AlbertMinrich!
Unter Verwendung von "
- geht dann allerdings nur einzeln für jede Datei und dementsprechend eher gemächlich.
In Zeile 11 steht übrigens vorweg ein "
Grüße
bastla
Unter Verwendung von "
xcopy
" etwa so:@echo off & setlocal
set "Quelle=C:\Quelle"
set "Ziel1=D:\Originalziel"
set "Ziel2=D:\Alternativziel"
for /f "delims=" %%i in ('xcopy /deyL "%Quelle%" "%Ziel1%"^|findstr /ev "kopiert"') do call :ProcessFile "%%i"
goto :eof
:ProcessFile
set "RelPath=%~dp1"
call set "RelPath=%%RelPath:%Quelle%\=%%"
echo xcopy /dy %1 "%Ziel2%\%RelPath%"
goto :eof
In Zeile 11 steht übrigens vorweg ein "
echo
" zum gefahrlosen Testen ...Grüße
bastla
Du könntest das kopieren natürlich auch vom linuxserver aus machen, grob etwa so:
mount -t smbfs //windowsserver/spiegel /mnt/windowsserver
cp -avn /pfad/zu/quelle/. /mnt/windowsserver
umount /mnt/windowsserver/
Damit hast Du genau das was du haben willst (denke ich).
lks