Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Du solltest ein Upgrade durchführen oder einen alternativen Browser verwenden.
Batch Robocopy abfragen?
- Ersteller CreatorX
- Erstellt am
Mit den richtigen Parmetern siehst du ja eine Ausgabe in der Kommandozeile und kannst ein Log generieren lassen:
Du kannst noch den Rückgabewert prüfen:
Code:
Robocopy.exe /XJ /MIR /DST /COPY:DAT /R:1 /W:2 /TS /FP /NDL /ETA /NP /TEE /LOG+:"C:\RoboLog.log"
Du kannst noch den Rückgabewert prüfen:
Code:
if errorlevel 16 echo ***FATAL ERROR*** & echo ***FATAL ERROR*** >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 15 echo FAIL MISM XTRA COPY & echo FAIL MISM XTRA COPY >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 14 echo FAIL MISM XTRA & echo FAIL MISM XTRA >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 13 echo FAIL MISM COPY & echo FAIL MISM COPY >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 12 echo FAIL MISM & echo FAIL MISM >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 11 echo FAIL XTRA COPY & echo FAIL XTRA COPY >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 10 echo FAIL XTRA & echo FAIL XTRA >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 9 echo FAIL COPY & echo FAIL COPY >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 8 echo FAIL & echo FAIL >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 7 echo MISM XTRA COPY & echo MISM XTRA COPY >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 6 echo MISM XTRA & echo MISM XTRA >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 5 echo MISM COPY & echo MISM COPY >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 4 echo MISM & echo MISM >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 3 echo XTRA COPY & echo XTRA COPY >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 2 echo XTRA & echo XTRA >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 1 echo COPY & echo COPY >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
if errorlevel 0 echo --no change-- & echo --no change-- >> "C:\RoboLog.log" & GOTO:RobocopyStatusEnd
:RobocopyStatusEnd
Eine Logdatei bringt mir jetzt so nix, ich muss das direkt in der Batch weiterverarbeiten.
Also hab ich das richtig verstranden, ich kann einfach direkt unter dem robocopy-Befehl z.b.
if errorlevel 0 then...
setzen und das Skript weiß somit dass robocopy nix kopieren musste, weil alle Dateien auf dem selben Stand waren?
Also hab ich das richtig verstranden, ich kann einfach direkt unter dem robocopy-Befehl z.b.
if errorlevel 0 then...
setzen und das Skript weiß somit dass robocopy nix kopieren musste, weil alle Dateien auf dem selben Stand waren?
Yuuri
Fleet Admiral
- Registriert
- Okt. 2010
- Beiträge
- 13.930
Dann führ, statt dem zweiten echo, deine Sachen aus.CreatorX schrieb:Eine Logdatei bringt mir jetzt so nix, ich muss das direkt in der Batch weiterverarbeiten.
Gut, wenn robocopy errorlevel 0 zurückgibt heißt das es wurde nix kopiert. Wäre ja simpel
Allerdings gibt es da ein Problem. Wenn zum Beispiel das Quellverzeichnis nicht gefunden wurde, gibt es auch eine Fehlermeldung zurück und dennoch wurde nix kopiert. Wie müsste eine Abfrage in dem Fall aussehen?
Allerdings gibt es da ein Problem. Wenn zum Beispiel das Quellverzeichnis nicht gefunden wurde, gibt es auch eine Fehlermeldung zurück und dennoch wurde nix kopiert. Wie müsste eine Abfrage in dem Fall aussehen?
Öhm, da bin ich scheinbar einem Irrtum unterlegen. Ich dachte immer, robocopy übernimmt auch hier die Synchronisation, sprich wenn der Quellordner nicht mehr vorhanden, wird automatisch der Zielordner gelöscht. Hab bisher gar nicht mitbekommen dass dem nicht so ist, aber gut zu wissen 
Danke erstmal.
Danke erstmal.
Ähnliche Themen
- Antworten
- 7
- Aufrufe
- 535
- Antworten
- 11
- Aufrufe
- 854
- Antworten
- 13
- Aufrufe
- 653
- Antworten
- 32
- Aufrufe
- 1.720
- Antworten
- 15
- Aufrufe
- 901