| 退出 | 含义 | 例子 | 注释 |
|---|---|---|---|
| 0 | 正常退出 | echo “hello” | 正常 |
| 1 | 普通错误 | df -abcd | |
| 2 | shell内建的错误 | empty_function() {} | 缺少关键字或命令,或者权限问题 |
| 126 | 调用的命令不可执行 | /dev/null | 权限问题,或者是不可执行的命令 |
| 127 | 找不到命令 | not_command | 可能命令不存在,或者未加入环境变量$PATH中 |
| 128 | 无效的退出码 | exit 6.18 | exit只接受整型退出码 |
| 128+n | 致命的信号n | kill -9 $PPID of script | 返回137(128+9) |
| 130 | 被Ctrl-C终止 | Ctrl-C | Ctrl-C是错误信号2,(130=2+128) |
| 255* | 退出状态超过范围 | exit -1 | exit只接受0 ~ 255范围的退出码 |
注:
- 退出码只会在 0 ~ 255 之间,如果你使用
<0或者>255的退出码,你猜会怎么样? - 因为 shell 可能会使用大于 125 的状态码,所以在编写程序时,退出码最好在 0~125 之间