Wie kann man ROBOCOPY dazu bringen, einen Fehler zu werfen, wenn der Zugriff verweigert wird?

513
JuniorPenguin

Ich verwende ROBOCOPY, um einige Dateien aus dem Ordner A in den Ordner B zu kopieren. Ich habe den Ordner B mit NTFS-Berechtigung absichtlich unzugänglich gemacht, um einen Fehler auszulösen, damit er eine andere Aktion ausführen kann, wenn das Kopieren fehlschlägt. Es scheint jedoch, dass ROBOCOPY keine Fehlerebene über 0 oder 1 (Erfolg) auslöst. Verwenden von Server 2016 mit Admin-Level-CMD.

Skript, das ich verwende:

@echo on  :: Robocopy's Variables set source=\\computer1\folder1\ set destination=\\computer2\folder2\ set logfilelocation=C:\scriptfolder\log.txt set scripts=C:\scriptfolder  robocopy %source% %destination% /E /NFL /NDL /NC /NS /NP /W:1 /R:0 /LOG:%logfilelocation% if ERRORLEVEL 1 goto success if ERRORLEVEL 0 goto success  :FAIL call %scripts%\failed.bat goto end  :SUCCESS call %scripts%\success.bat  :END 

Wenn ich also nach der Robocopy-Zeile echo% errorlevel% ausführen, wird ein Fehlerlevel von 0 (Erfolg) ausgegeben, während das Protokoll den Zugriff für alle Dateien verweigert.

2018/08/27 10:22:52 ERROR 5 (0x00000005) Accessing Destination Directory \\computer2\folder2\ Access is denied. 

Ich wollte einen Fehler, der mir aber nicht den ROBOCOPY-Fehlerlevel über 1 gibt. Irgendwelche Vorschläge, damit ich Maßnahmen ergreifen kann, wenn die Dateien nicht kopiert werden?

0
Könnte es sein, dass die von Ihnen angegebenen "no log" -Parameter `/ NFL / NDL / NC / NS 'auch dazu führen, dass die Fehler ignoriert werden? harrymc vor 6 Jahren 0

0 Antworten auf die Frage