Errorlevel return values of some common commands in DOS

Time:2019-10-6

ATTRIB.EXE
(a) Target file/folder not found                    = ERRORLEVEL 1
(b) Invalid switch                                  = ERRORLEVEL 1
(c) Sharing violation (target file in use)          = ERRORLEVEL 1
(d) Invalid drive specification                     = ERRORLEVEL 1
(e) Drive not ready (either Abort or Fail reply)    = ERRORLEVEL 1
(f) Invalid/wrong number of parameters              = ERRORLEVEL 1

EXTRACT.EXE
(a) Invalid switch                                  = ERRORLEVEL 1

FC.EXE
(a) Insufficient number of filespecs                = ERRORLEVEL 1
(b) Too many filenames on command line              = ERRORLEVEL 1
(c) Sharing Violation + Abort reply                 = ERRORLEVEL 5
     (Note: Fail reply returns ERRORLEVEL 0)
(d) Drive not ready                                 = ERRORLEVEL 18
     (Note: Fail reply returns ERRORLEVEL 0)

FIND.EXE
(a) Target string found    (=f0und)                  = ERRORLEVEL 0
(b) Target string missing (=m1ssing)                = ERRORLEVEL 1
(c) find /?                                         = ERRORLEVEL 1
(d) Parameter format not correct                    = ERRORLEVEL 2
(e) Specified file to search not found              = ERRORLEVEL 2
(f) Specified file in use + Fail reply              = ERRORLEVEL 2
(g) Drive not ready + Fail reply                    = ERRORLEVEL 2
(h) Specified file in use + Abort reply             = ERRORLEVEL 5
(i) Drive not ready + Abort reply                   = ERRORLEVEL 5

FORMAT.COM
(a) Drive not ready                                 = ERRORLEVEL 4
     (There is no Abort, Retry, Fail stall)

FTP.EXE
(a) Brief help (use: ftp -h for Brief help)         = ERRORLEVEL 2
(b) Error opening script file (file missing)        = ERRORLEVEL 2
(c) Invalid switch                                  = ERRORLEVEL 2

MORE.COM
(a) Invalid switch (MORE doesn’t accept switches)   = ERRORLEVEL 1
(b) Drive not ready (Abort reply)                   = ERRORLELEL 5
     (Note: Fail reply returns ERRORLEVEL 0)

MOVE.EXE
(a) Required parameter missing                      = ERRORLEVEL 1
(b) Unable to create destination                    = ERRORLEVEL 1
(c) Unable to open source                           = ERRORLEVEL 1
     (you see this when trying to MOVE a folder from one drive
      to another. You need to use XCOPY /S followed by DELTREE,
      since MOVE won’t handle folder moves across drives)
(d) Sharing violation + Fail reply                  = ERRORLEVEL 1
     (Note: file is nevertheless COPIED, not moved, in this case)
(e) Sharing violation + Abort reply                 = ERRORLEVEL 5
     (Note: file is nevertheless COPIED, not moved, in this case)
(f) Drive not ready (Abort reply)                   = ERRORLEVEL 18
     (Note: Fail reply – unusually – returns ERRORLEVEL 1)

PING.EXE
(a) Unknown host                                    = ERRORLEVEL 1
     (usually=name not found on DomainNameServer)
(b) Brief help (with no parameter)                  = ERRORLEVEL 1
Note: for PING Brief help with /? switch, ERRORLEVEL is 0
(c) Invalid switch                                  = ERRORLEVEL 1
     (and displays the Brief help as well)
(d) Interrupted with [Ctrl-C]                       = ERRORLEVEL 255

SORT.EXE
(a) Invalid switch                                  = ERRORLEVEL 1
(b) Drive not ready (Abort reply)                   = ERRORLEVEL 15
     (Note: Fail reply returns ERRORLEVEL 0)

START.EXE
(a) start /? (real mode)                            = ERRORLEVEL 1
(b) start /? (GUI)                                  = ERRORLEVEL 255
(c) Can’t find file specified for START             = ERRORLEVEL 255
(d) No file association for specified file          = ERRORLEVEL 255
(e) Drive not ready                                 = ERRORLEVEL 255
     (There is no Abort, Retry, Fail stall)

SUBST.EXE
(a) Invalid parameter                               = ERRORLEVEL 1
(b) Invalid switch                                  = ERRORLEVEL 1
(c) Path not found                                  = ERRORLEVEL 1
(d) Drive not ready (Abort reply)                   = ERRORLEVEL 21
     (Note: Fail reply – unusually – returns ERRORLEVEL 1)

TRACERT.EXE
(a) Unable to resolve target system name            = ERRORLEVEL 1
     (usually=name not found on DomainNameServer)
(b) Invalid switch                                  = ERRORLEVEL 1
(c) Brief help (no parameter)                       = ERRORLEVEL 1
(d) Interrupted with [Ctrl-C]                       = ERRORLEVEL 255
Note: for TRACERT Brief help, type command without parameters

XCOPY.EXE
(a) File not found                                  = ERRORLEVEL 1
(b) Invalid date in /d switch                       = ERRORLEVEL 4
(c) Invalid number of parameters                    = ERRORLEVEL 4
(d) Invalid parameter                               = ERRORLEVEL 4
(e) Device not ready                                = ERRORLEVEL 4
(f) Unable to create directory                      = ERRORLEVEL 4
(g) System can’t find file                          = ERRORLEVEL 5
     (this occurs when device such as NUL is used as Source file)