Bash Exit Codes
From Free Knowledge Base- The DUCK Project: information for everyone
. Exit Code Number Meaning Example Comments . . 1 catchall for general errors . example: let "var1 = 1/0" . miscellaneous errors, such as "divide by zero" . . 2 misuse of shell builtins, according to Bash documentation . Seldom seen, usually defaults to exit code 1 . . 126 command invoked cannot execute . permission problem or command is not an executable . . 127 "command not found" . possible problem with $PATH or a typo . . 128 invalid argument to exit . example: exit 3.14159 . exit takes only integer args in the range 0 - 255 . . 128+n fatal error signal "n" . example: kill -9 $PPID of script . $? returns 137 (128 + 9) . . 130 script terminated by Control-C . Control-C is fatal error signal 2, (130 = 128 + 2, see above) . . 255* exit status out of range . example: exit -1 . exit takes only integer args in the range 0 - 255 . . According to the table, exit codes 1 - 2, 126 - 165, and 255 [1] . have special meanings, and should therefore be avoided as user- . specified exit parameters. Ending a script with exit 127 would . certainly cause confusion when troubleshooting (is the error a . "command not found" or a user-defined one?). However, many scripts . use an exit 1 as a general bailout upon error. Since exit code 1 . signifies so many possible errors, this might not add any additional . ambiguity, but, on the other hand, it probably would not be very . informative either. . . 07252003