Я использую ROBOCOPY для копирования некоторых файлов из папки A в папку B. Я специально сделал папку B недоступной, используя разрешение NTFS, чтобы выдать ошибку, чтобы она могла предпринять другое действие в случае сбоя копирования. Однако, похоже, что ROBOCOPY не выбрасывает уровень ошибки выше 0 или 1 (успех). Использование Server 2016 с уровнем администратора CMD.
Скрипт, который я использую:
@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
Таким образом, в основном, если я запускаю echo% errorlevel% после строки robocopy, он выдает уровень ошибки 0 (успех), в то время как журнал показывает, что доступ запрещен для всех файлов.
2018/08/27 10:22:52 ERROR 5 (0x00000005) Accessing Destination Directory \\computer2\folder2\
Access is denied.
Я хотел получить ошибку, но просто не дал мне уровень ошибки ROBOCOPY выше 1. Любые предложения, чтобы я мог принять меры, когда файлы не копировать?