Mike C.
From RoboCopy.doc
Return Code
The return code from Robocopy (version 1.74 and later) is a bit map, defined as
follows:
Hex Bit Value Decimal Value Meaning If Set
0x10 16 Serious error. Robocopy did not copy any files. This is either a
usage error or an error due to insufficient access privileges on the source or
destination directories.
0x08 8 Some files or directories could not be copied (copy errors
occurred and the retry limit was exceeded). Check these errors further.
0x04 4 Some Mismatched files or directories were detected. Examine the
output log. Housekeeping is probably necessary.
0x02 2 Some Extra files or directories were detected. Examine the
output log. Some housekeeping may be needed.
0x01 1 One or more files were copied successfully (that is, new files
have arrived).
0x00 0 No errors occurred, and no copying was done. The source and
destination directory trees are completely synchronized.
You can use this information in a batch file to report the most serious
anomalies, as follows:
if errorlevel 16 echo ***FATAL ERROR*** & goto end
if errorlevel 8 echo **FAILED COPIES** & goto end
if errorlevel 4 echo *MISMATCHES* & goto end
if errorlevel 2 echo EXTRA FILES & goto end
if errorlevel 1 echo Copy successful & goto end
if errorlevel 0 echo --no change-- & goto end
:end
Alternatively, full details of the return code could be reported as follows:
if errorlevel 16 echo ***FATAL ERROR*** & goto end
if errorlevel 15 echo FAIL MISM XTRA COPY & goto end
if errorlevel 14 echo FAIL MISM XTRA & goto end
if errorlevel 13 echo FAIL MISM COPY & goto end
if errorlevel 12 echo FAIL MISM & goto end
if errorlevel 11 echo FAIL XTRA COPY & goto end
if errorlevel 10 echo FAIL XTRA & goto end
if errorlevel 9 echo FAIL COPY & goto end
if errorlevel 8 echo FAIL & goto end
if errorlevel 7 echo MISM XTRA COPY & goto end
if errorlevel 6 echo MISM XTRA & goto end
if errorlevel 5 echo MISM COPY & goto end
if errorlevel 4 echo MISM & goto end
if errorlevel 3 echo XTRA COPY & goto end
if errorlevel 2 echo XTRA & goto end
if errorlevel 1 echo COPY & goto end
if errorlevel 0 echo --no change-- & goto end
:end
Jerold Schulman / MVP
JSI, Inc.
http://www.jsiinc.com