Exit Codes
From Leo's Notes
This page was last edited on 27 April 2021, at 18:25.
Here are some common exit codes that may be returned by a program or script.
| Status | Description |
|---|---|
| 0 | Successful Termination |
| 1 | General Error |
| 2 | Misuse of shell builtins, keywords, or functions |
| 126 | Cannot Execute |
| 127 | Command Not Found. Path or typo issue. |
| 128+n | Fatal error signal n, where n is the signal number as defined in: |
| 130 | Program Interrupted (SIGINT, 2), such as termination from Ctrl-C |
| 134 | Program Abort (SIGABRT, 6) |
| 136 | Erroneous Arithmetic Operation (SIGFPE, 8), such as division by zero |
| 139 | Segmentation Fault (SIGSEGV, 11) |
| 160+n | The largest signal value is 31.
As a result, all values after 128+31 can be interpreted as negative return codes. Eg. 255 = -1, 254 = -2, 240 = -16, 225 = -31, and so forth Simple way to 'convert' it is to just subtract the value from 256. |
| 255 | Maximum exit code value. Obtained when the program calls exit -1.
|
| 256+ | All higher exit codes should be reduced down to the 0-255 range via the modulo operator.
Eg. Code 3809 % 256 results in 225 |